Skip to content

Conversation

@gastonponti
Copy link

No description provided.

samlaf and others added 3 commits September 23, 2025 18:46
…ion_block_num to da-server (#45)

* feat(altda-client): pass l1_inclusion_block_number as query param to da server

This is used to perform punctuality check on EigenDA, but is generic and should be used by all da layers for the same purpose.

* feat(altda): drop invalid certs

Defined generic protocol where da-server will return a 418 (TEAPOT) error when a cert is invalid, along with the reason (250 bytes) in the body.

The 418 error is transformed into an internal golang InvalidCommitmentError which when received by the derivation pipeline, causes it to skip the commitment and move forward.

* chore(daclient): use uint64 for blocknum directly instead of L1BlockRef struct

The struct was confusing to use in tests because it wasnt sure only the .Number field of it was used, so made implementers unsure whether they needed to populate the whole struct. Since we only used the .Number field, I opted to just take a uint64 directly as argument to GetInput.

* style(daclient): use MaxBytesReader

Use MaxBytesReader and document why we restrict error body to 1000 characters (upped from 250 previously): to prevent DDoS
…m-optimism#49)

feat: InvalidCommitmentError contains status code

This commit goes hand-in-hand with Layr-Labs/eigenda-proxy#406, as it now parses the StatusCodes that are returned during 418 TEAPOT errors by proxy.
feat(altda): implement all teapot statuscodes

This should (hopefully!) be the last PR changing the teapot error handling. I think (??) we've finally nailed it with the recent spec: https://github.com/Layr-Labs/eigenda/blob/f4ef5cd55633d70bed0d54416c2d253684f0639c/docs/spec/src/integration/spec/6-secure-integration.md#derivation-process

This PR thus implements handling of the 4 types of TEAPOT errors possible. Still need to update proxy to return those errors.
@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 5.26%. Comparing base (6405229) to head (c9890a5).

❗ There is a different number of reports uploaded between BASE (6405229) and HEAD (c9890a5). Click for more details.

HEAD has 4 uploads less than BASE
Flag BASE (6405229) HEAD (c9890a5)
contracts-bedrock-tests 3 0
2 1
Additional details and impacted files
@@                Coverage Diff                 @@
##           celo-rebase-14    #408       +/-   ##
==================================================
- Coverage           45.87%   5.26%   -40.62%     
==================================================
  Files                1391       4     -1387     
  Lines              113072      76   -112996     
==================================================
- Hits                51873       4    -51869     
+ Misses              57502      70    -57432     
+ Partials             3697       2     -3695     
Flag Coverage Δ
contracts-bedrock-tests ?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1390 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants