Skip to content

Describe shnarfs - #1742

Open
alexandratran wants to merge 1 commit into
mainfrom
shnarfs
Open

alexandratran wants to merge 1 commit into
mainfrom
shnarfs

Conversation

@alexandratran

@alexandratran alexandratran commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Add glossary definition for "shnarf," and add a "Data commitments (shnarfs)" subsection under the finalization contract.

Preview: https://doc-linea-git-shnarfs-consensys-incorporated.vercel.app/protocol/architecture/smart-contracts#data-commitments-shnarfs


Note

Low Risk
Documentation-only changes with no runtime, contract, or security behavior impact.

Overview
Introduces shnarf as a documented concept: a per-submission hash commitment the finalization contract records, chaining submissions and binding data, state, and proofs.

Adds a Data commitments (shnarfs) subsection under the finalization contract in smart-contracts.mdx (Keccak composition, proof public inputs, and how recording differs for EIP-4844 blobs, calldata, and shnarf-only validium). Registers the term in glossary.json (and the generated glossary page), links it from the architecture transaction-lifecycle step and data-availability “See also,” and tightens minor wording on data submission models.

Reviewed by Cursor Bugbot for commit 2d71761. Bugbot is set up for automated code reviews on this repo. Configure here.

@vercel

vercel Bot commented Oct 6, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
doc-linea Ready Ready Preview Oct 6, 2026 9:18pm UTC

Request Review

@jimmeilin

Copy link
Copy Markdown
Collaborator

LGTM

@jimmeilin jimmeilin assigned jimmeilin and unassigned jimmeilin Oct 7, 2026
The finalization contract:

- Accepts the transaction data the network publishes, through the deployment's chosen
[data submission model](./index.mdx#transaction-lifecycle), and records each submission as a [shnarf](#data-commitments-shnarfs).

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.

technically it is storing the submitted or provided shnarf.

only the Valium accepts the provided, the other two models compute it based on the data submitted in the transaction and the final shnarf is stored.

- A data evaluation point and claim, which bind the shnarf to the submitted data

At finalization, the <GlossaryTerm term="zk-SNARK" /> public input includes the last finalized shnarf and the
new final shnarf.

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.

Suggested change
new final shnarf.
new final shnarf binding the proven execution to the data provided based on data model.


At finalization, the <GlossaryTerm term="zk-SNARK" /> public input includes the last finalized shnarf and the
new final shnarf.
The contract accepts the proof only when that new shnarf matches one it has already recorded.

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.

Suggested change
The contract accepts the proof only when that new shnarf matches one it has already recorded.
The contract accepts the proof only when that new final shnarf matches one it has already recorded.

This branch was successfully deployed

1 active deployment
Preview — 2d717618 Deployed Oct 6, 2026 by vercel[bot]
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.

3 participants