Skip to content

Conversation

@Soleimani193
Copy link
Contributor

@Soleimani193 Soleimani193 commented Jul 25, 2025

This PR implements the flow for the invalidity proofs. It supports only two cases of invalidity: bad--transaction-nonce and bad-account-balance.

Checklist

  • I wrote new tests for my new core changes.
  • I have successfully ran tests, style checker and build against my new changes locally.
  • I have informed the team of any breaking changes if there are any.

Note

Introduce invalidity proofs (bad nonce/balance) and fully integrate them into aggregation/PI interconnection, config, CLI, tooling, and tests, while extending public inputs and compiler utilities to support new FTX rolling-hash semantics and padded stacking.

  • Invalidity Proofs (Bad Nonce/Balance):
    • Add backend invalidity module: request/response, MiMC-based public input, account trie/Keccak helpers, proof generation and CLI support.
    • New invalidity circuits (nonce/balance), GNARK structures, keccak preimage wiring, PI hashing, tests.
    • Config: add Invalidity section and max RLP size.
  • Aggregation Integration:
    • Extend aggregation request/collected fields/response with forced tx rolling hash/number and block hashes; collect and verify invalidity PIs; include in public input and proof.
    • Public-input: expand aggregation FPI (Final/LastFinalized FTX hash/number) and add Invalidity FPI.
  • PI Interconnection:
    • Support invalidity inputs (count, PIs) and constraints; hash in aggregation PI; wiring in assignment/tests.
  • Tooling & Test Data:
    • Testcase generator: specs for invalidity; emit forcedTransaction-*.json; update autoupdate script and fixtures.
    • Execution request/response include parentBlockHash.
  • Protocol/Compiler Utilities:
    • Self-recursion: stack padded columns support; merkle/position glue refactor; optional SIS hashing tweaks.
    • Dedicated: stacked column with filters and projection.
    • Keccak: stricter size checks.
  • State Mgmt & Utils:
    • Rename hashHash in accumulator; add Gnark account; vector builder helpers.
  • Misc:
    • New tests (MiMC, invalidity, PI), assets wiring, Solidity verifier copy path unchanged.

Written by Cursor Bugbot for commit 43fd8ff. This will update automatically on new commits. Configure here.

@Soleimani193 Soleimani193 self-assigned this Aug 19, 2025
@Soleimani193 Soleimani193 added the Prover Tag to use for all work impacting the prover label Aug 19, 2025
@Soleimani193 Soleimani193 marked this pull request as ready for review October 13, 2025 13:20
@Soleimani193 Soleimani193 requested a review from a team as a code owner October 13, 2025 13:20
@github-actions
Copy link

PR has had no activity for 30 days. What is blocking it? Is there anything you can do to help move it forward? Without action it will be closed in 7 days.

@github-actions github-actions bot added the Stale label Nov 13, 2025
@Soleimani193 Soleimani193 marked this pull request as draft November 13, 2025 08:16
@github-actions github-actions bot removed the Stale label Nov 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Prover Tag to use for all work impacting the prover

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants