Skip to content

Update EIP-8288: Define authenticated FOCIL dependency proofs - #12475

Draft
Marchhill wants to merge 133 commits into
ethereum:masterfrom
Marchhill:eip8288-focil-conditions
Draft

Marchhill wants to merge 133 commits into
ethereum:masterfrom
Marchhill:eip8288-focil-conditions

Conversation

@Marchhill

@Marchhill Marchhill commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Depends on #12473, inheriting #12479's proof-in-body baseline. Review changes above the wrapper baseline. Also includes the independent zero-hash clarifications from #12518.

Defines EIP-8288's changes to EIP-7805 in one section: inclusion obligations, signed proof commitments, availability and retention, Engine methods, and activation requirements.

  • Dependency-free obligations survive missing or invalid proofs; dependency-bearing obligations require the committed proof by the attester's deadline.
  • Lists may reuse covering wrapper proofs; block proofs remain exact. List-coverage failures do not invalidate aggregate-proof verdicts.
  • Signed gossip and request/response retrieval supply proofs, with explicit retention deadlines and per-list Engine inputs.
  • Committee-wide dissemination is an activation constraint; workload and timing details live in the benchmark asset.

Validation: Markdown lint, structural EIP checks and shared-baseline consistency checks pass. Performance benchmarks remain outstanding activation requirements.

@github-actions github-actions Bot added c-update Modifies an existing proposal s-draft This EIP is a Draft t-core labels Oct 10, 2026
@eth-bot

eth-bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

File EIPS/eip-8288.md

Requires 1 more review from Authors: @tcoratger, @vbuterin

@eth-bot eth-bot added the a-review Waiting on author to review label Oct 10, 2026
@Marchhill Marchhill changed the title Update EIP-8288: Preserve conditional FOCIL inclusion Update EIP-8288: Define proof capacity and conditional FOCIL inclusion Oct 10, 2026
Comment thread EIPS/eip-8288.md Outdated

To enforce this per list, the activating fork must define Engine API versions for payload validation and building that carry each counted inclusion list's `[transactions, recursive_stark]`, preserving its authenticated committee-position association and EIP-7805's membership and committed claims. Existing method versions retain their encodings. The execution layer checks each list's dependency proof and derives obligations per list. The consensus layer cannot instead drop lists with failed proofs: checking `deps_hash` requires parsing transactions, and dropping a whole list would remove obligations for its dependency-free transactions.

For a transaction imposing an inclusion obligation, omission is permitted only when EIP-7805 excuses it or `dependencies_fit_block(dependencies(block) + dependencies(tx))` is false. Capacity is evaluated against the complete final block dependency union, including when EIP-7805 evaluates transaction validity at an earlier index. Dependencies already present in the block consume no additional capacity. Local mempool limits, proving time, proof retention or aggregation scheduling are not additional omission grounds.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Can 16 list proofs plus one wrapper proof be merged in time, given leanVM takes at most 16 children per step?

Comment thread EIPS/eip-8288.md Outdated

The weights and unit budget are provisional, pending worst-case circuit benchmarks for the activated verification profiles, memory use and slot deadlines, including recursive merges and discards needed for IL obligations. The activating fork must fix them together with gas pricing; clients must not choose weights or capacity from local measurements. They are consensus capacity units, not an additional gas charge.

The circuit identified by `AGGREGATED_VK` must support every valid block dependency set within both bounds. Its separate private-input and verification-work limits still apply. Local proving budgets and mempool policy do not reduce block capacity and are not grounds for omitting an inclusion-list transaction.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should the private-input bounds be required to cover the discards from pruning one IL's proof? Otherwise a builder could be obliged to include a tx it can't prove.

@Marchhill Marchhill changed the title Update EIP-8288: Define proof capacity and conditional FOCIL inclusion Update EIP-8288: Define authenticated FOCIL dependency proofs Oct 15, 2026

This branch has not been deployed

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

Labels

a-review Waiting on author to review c-update Modifies an existing proposal s-draft This EIP is a Draft t-core

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants