Appendix
Sources
Complete PR Timeline
Merged
| Date | PR | Author | Description |
|---|---|---|---|
| Jan 29 | #11202 | fjl | Original EIP submission |
| Jan 29 | #11205 | fjl | Fix: elide VERIFY frame data from sig hash |
| Jan 29 | #11209 | kevaundray | Fix: status field number in TXPARAM |
| Feb 10 | #11297 | lightclient | Relax APPROVE to not require top-level frame |
| Feb 11 | #11305 | lightclient | Fix typo |
| Mar 2 | #11344 | derekchiang | Fix CALLER/ADDRESS bug, clarify reverts |
| Mar 10 | #11355 | rakita | Add EIP-8175 Composable Transaction (related) |
| Mar 10 | #11379 | derekchiang | Add EOA support (default code) |
| Mar 12 | #11400 | fjl | Clean up opcodes: FRAMEDATALOAD/COPY |
| Mar 12 | #11401 | fjl | Add approval bits to frame mode |
| Mar 13 | #11402 | fjl | Fix bit indices (1-indexed) |
| Mar 13 | #11406 | derekchiang | Add derekchiang as co-author |
| Mar 25 | #11395 | derekchiang | Add atomic batching |
| Mar 25 | #11415 | lightclient | Add mempool policy |
| Mar 26 | #11448 | derekchiang | Update default code for approval bits |
| Apr 8 | #11251 | BonyHanter83 | Add EIP-1559 to requires header |
| Apr 14 | #11521 | benaadams | Tighten spec (mode/flags split, FRAMEPARAM, MAX_FRAMES=64, per-frame cost, default code hardening) |
| Apr 16 | #11534 | lightclient | Add value field to frame (SENDER-only, TXPARAM(0x08), FRAMEPARAM(0x08)) |
| Apr 22 | #11544 | derekchiang | Mix in FRAME_TX_TYPE to sighash (EIP-2718 cross-type replay fix) |
| Apr 28 | #11575 | lightclient | Allow payer to approve before sender (auto-merged in error; reverted by #11579 same window, reopened as draft #11580) |
| Apr 29 | #11579 | lightclient | Revert #11575 |
| Apr 29 | #11577 | lightclient | Remove RLP call batch from default account (temporarily made default-code SENDER mode revert, later relaxed by #11621) |
| Apr 30 | #11567 | derekchiang | Relax mempool deploy-frame rule (drops EIP-7997 from requires; any stateless factory qualifies; CREATE/SETDELEGATE join CREATE2 in deploy-frame carve-out) |
| Apr 30 | #11537 | dionysuzx | Add EIP-8141 to CFI in EIP-8081 Hegotá meta EIP (governance) |
| May 5 | #11272 | Thegaram | Disable EIP-3607 origination check for frame transactions (adds 3607 to requires with explicit carve-out) |
| May 11 | #11598 | soispoke, nerolation, lightclient, vbuterin | Add EIP-8250: Keyed Nonces for Frame Transactions (standalone EIP layering (nonce_key, nonce_seq) and a NONCE_MANAGER system contract on EIP-8141; first EIP whose requires header includes EIP-8141) |
| May 11 | #11621 | lightclient | Frames cleanup (spec coherence refactor: skipped-batch receipt status, FRAMEPARAM operand order, P256 dropped from default code, default code accepts SENDER/DEFAULT, adds 7623+7702 to requires) |
| May 12 | #11652 | derekchiang | Extend atomic batching from SENDER-only to any frame mode; restrictive mempool tier separately forbids the flag inside the validation prefix |
| May 14 | #11662 | nerolation | Add EXPIRY_VERIFIER frame: canonical contract at address(0x8141) whose runtime enforces an 8-byte unix-seconds deadline; mempool drops expired txs; TIMESTAMP carve-out for canonical runtime |
| May 22 | #11481 | lightclient | Add signatures list to outer tx (opened Apr 2); new signatures outer-envelope field carrying signature, scheme/algorithm, signer, and message metadata, verified before frame execution; default code reads from this list. Forward-compat hook for PQ signature aggregation |
| May 22 | #11692 | nerolation | Add EIP-8266: Expiring Nonces for Frame Transactions (sibling EIP whose requires includes EIP-8141 and EIP-8250). Second EIP in the compose-by-requires AA stack |
| Jun 1 | #11749 | soispoke | Update EIP-8250: Add support for nonce key sets (generalizes single keyed nonce to a bounded key set; +64/-40). First post-merge revision to any sibling EIP |
| Jun 5 | #11726 | soispoke, vbuterin, nerolation | Add EIP-8272: Recent Roots for Frame Transactions (sibling EIP, +394 lines). Third compose-by-requires sibling requiring both EIP-7843 and EIP-8141. New recent_root_references outer-envelope field, RECENT_ROOT_ADDRESS system contract with 8192-slot ring, and RECENTROOTREFLOAD opcode (moved from 0xb4 to 0xb5 by #11967) |
| Jun 26 | #11810 | nerolation | Restore the APPROVE Behavior section accidentally deleted by the signatures-list merge (#11481); +23/-0, no semantic change beyond restoration |
| Jul 6 | #11837 | lightclient | Add ARBITRARY signature scheme, SIGPARAM (0xb4), and raw signature-byte elision for empty-msg signatures so custom verifiers can sign the canonical hash |
| Jul 6 | #11870 | lightclient | Clarify exceptional halts outside frame transactions and charge intrinsic gas for actual frame/signature data plus signature-validation cost |
| Jul 7 | #11814 | morph-dev | Spec cleanup: default code uses tx.signatures[0], signer defaults to tx.sender, public-mempool expiry frames must be first, mempool flags must match approval scope, no VERIFY after validation prefix |
| Jul 17 | #11953 | lightclient | Correct skipped atomic-batch receipt status from 0x3 to 0x2 |
| Jul 17 | #11954 | lightclient | Restore codeless EOA sponsorship: index 0 for execution scope, index 1 for payment-only default VERIFY |
| Jul 17 | #11937 | svlachakis | Pin secp256k1 recovery id to 0/1 and require canonical r/low-s |
| Jul 17 | #11938 | svlachakis | Specify stack operand order for FRAMEDATALOAD and FRAMEDATACOPY |
| Jul 17 | #11939 | svlachakis | Warn that execution approval authorizes every later SENDER frame |
| Jul 17 | #11941 | svlachakis | Apply the EIP-7623 calldata floor to frame and signature data |
| Jul 18 | #11960 | AnkushinDaniil | Align EIP-8250 NONCE_MANAGER activation wording with EIP-8272 |
| Jul 18 | #11930 | AnkushinDaniil | Fix EIP-8272 recent-root count selector to non-conflicting 0x0f |
| Jul 18 | #11931 | AnkushinDaniil | Restore EIP-8141 signature data and verification cost in EIP-8272 gas limit |
| Jul 18 | #11959 | AnkushinDaniil | Restore signatures and current sighash semantics in EIP-8272 |
| Jul 18 | #11961 | AnkushinDaniil | Harden EIP-8272 public-mempool expiry and reorg eviction |
| Jul 18 | #11963 | AnkushinDaniil | Restore signatures and correct sighash description in EIP-8250 |
| Jul 19 | #11958 | AnkushinDaniil | Price EIP-8250 nonce keys and sequence as EIP-7623 transaction data |
| Jul 19 | #11966 | soispoke | Move EIP-8250's first nonce-key selector to 0x10 and align approval wording |
| Jul 20 | #11967 | soispoke | Move EIP-8272 RECENTROOTREFLOAD from colliding 0xb4 to 0xb5 |
Open
| Date | PR | Author | Description |
|---|---|---|---|
| Apr 2 | #11482 | derekchiang | Allow precompiles for VERIFY frames (all reviewers approved) |
| Apr 22 | #11555 | derekchiang | Add support for guarantors (payer covers gas even if sender validation fails) |
| Apr 29 | #11580 | lightclient | Allow payer to approve before sender (draft; alternative to #11555 guarantors) |
| May 16 | #11681 | pedrouid | Extend EIP-8141 with guarantors, keyed nonces, and signer binding via a signer envelope field and an AUTH_MANAGER system contract; +810/-74 lines. Successor to closed #11643 after PR #11662 settled the expiry design |
| Jun 5 | #11772 | vbuterin, Thomas Coratger | Add EIP-8288: Frame type for PQ sig and STARK aggregation (eip-8288.md, +508 lines). Fourth compose-by-requires sibling EIP. Still open as of Jul 20 with requested changes and proof-security review around recursive STARK soundness |
| Jul 16 | #11935 | svlachakis | Add MAX_SIGNATURES = 64; review debates explicit bounds versus gas/transaction-size limits |
| Jul 16 | #11940 | svlachakis | Define transaction-level EIP-3529 storage-refund accounting for frames |
| Jul 16 | #11942 | svlachakis | Define frame receipt encoding for the fork's Receipts message |
| Jul 17 | #11955 | AnkushinDaniil | Define approval-effect commit and rollback boundaries |
| Jul 17 | #11956 | AnkushinDaniil | Atomically batch ERC-20 sponsor repayment with all SENDER operations |
| Jul 18 | #11968 | soispoke | Draft: express EIP-8250 as additive changes to EIP-8141 |
| Jul 18 | #11969 | soispoke | Draft: use charged_gas for block accounting and payer settlement |
| Jul 18 | #11970 | soispoke | Draft: express EIP-8272 as additive changes to EIP-8141 |
| Jul 19 | #11971 | soispoke | Draft: pin RLP decoding, non-mutating sighash, P256 rules, and EXPIRY_VERIFIER activation |
Related
| Date | PR | Author | Description |
|---|---|---|---|
| Mar 30 | #1638 | oxshaman | Add ERC-8211: Smart Batching (ERCs repo). Transport-agnostic composable batch encoding; names EIP-8141 SENDER frames as a forward-compatibility execution path, does not require it |
| Apr 2 | #11480 | zacksfF | Add EIP-8215: Hash-Committed Account. Open complementary PQ address-derivation proposal: new accounts derive from a Merkle root of spending conditions, while EIP-8141 upgrades validation for existing accounts |
| Apr 11 | #11509 | benaadams | Add EIP-8223: Contract Payer Transaction (alternative/complementary sponsorship proposal) |
| Apr 12 | #11518 | benaadams | Add EIP-8224: Counterfactual Transaction (shielded gas funding via ZK proofs) |
| Apr 22 | #11438 | Giulio2002 | Add EIP-8202: Scheme-Agile Transactions (alternative AA proposal; PQ signatures on L1 without general AA) |
| Apr 25 | #11571 | SirSpudlington | Update EIP-7932: refactor signature registry to be friendlier to EIP-8141 (rename sigrecover → sigaddress, add sigverify/sigcosts precompiles for AA use cases) |
| Jun 3 | #1794 | chiranjeev13 | Add ERC-8286: Modular Accounts for Frame Transactions (ERCs repo). Defines how ERC-7579 modular accounts implement the EIP-8141 validation flow; first application-layer standard built on EIP-8141. Still open as of Jul 20 with CI/editor review outstanding |
| Jun 30 | #11773 | forshtat | Move EIP-2542 to Withdrawn, superseded by EIP-8141 (merged Jun 30; first EIP formally withdrawn in favor of frame transactions) |
| Jul 15 | #1883 | chunter-cb | Add draft ERC-8340 Transaction Metadata Encoding, an application-layer CBOR layout for EIP-8130's opaque metadata field |
Closed (not merged)
| Date | PR | Author | Description | Reason |
|---|---|---|---|---|
| Feb 13 | #11310 | marukai67 | Fix link to ERC-7562 | "It's not broken" — lightclient |
| Feb 14 | #11314 | marukai67 | Fix link to EIP-2718 | "Not broken, thanks though" — lightclient |
| Feb 15 | #11321 | marukai67 | Fix links | "They aren't broken" — lightclient |
| Feb 25 | #11352 | lucemans | Accidental PR | Self-closed |
| Mar 13 | #11404 | derekchiang | Simplify approval bits | Superseded by #11401 |
| Mar 14 | #11408 | SirSpudlington | Migrate default code to EIP-7932 | Rejected: authors want to keep custom behavior |
| Apr 23 | #11455 | SirSpudlington | Default code tweaks for EIP-7392 compatibility | Never gathered reviewer approvals; closed after ~4 weeks |
| May 4 | #11597 | soispoke, nerolation, lightclient, vbuterin | Keyed Nonces for Frame Transactions (first attempt) | PR accidentally bundled an unrelated eip-FOCIL.md change; closed and resubmitted clean as #11598 the same day |
| May 8 | #11584 | nerolation | Add 2D nonces (delta against EIP-8141) | Closed in favor of the standalone Keyed Nonces EIP (#11598); same author/concept moved to a Standards Track sibling |
| May 14 | #11488 | chiranjeev13 | Fix spec inconsistencies (APPROVE scopes, VERIFY count) | Sat open since Apr 6 with no reviewer activity; closed after PR #11621 (May 11) absorbed the structurally compatible portions and the rest no longer applied |
| May 18 | #11643 | pedrouid | Extended Feature Set: bundle guarantors + keyed nonces + signer binding + envelope expiry into EIP-8141 (+843/-69 lines) | Closed in favor of #11681 after PR #11662 (EXPIRY_VERIFIER, merged May 14) made the envelope-expiry component redundant |
| Jul 16 | #11932 | AnkushinDaniil | Bound the signatures list | Closed without comment; same proposal continues as #11935 |
| Jul 17 | #11957 | AnkushinDaniil | Exclude keyed-nonce first-use gas from MAX_VERIFY_GAS | Self-withdrawn because it weakened keyed-read amplification protection |
| Jul 18 | #11964 | soispoke | Add EIP-8272 source_id test vector | Closed because fixed 20-byte + 32-byte encoding was already unambiguous |
| Jul 19 | #11972 | soispoke | Clarify NONCE_MANAGER activation | Draft self-closed without comment |
| Jul 19 | #11973 | soispoke | Clarify EIP-8272 sighash and predeploy address | Draft self-closed without comment |
Key Contributors
| Person | Handle | Role |
|---|---|---|
| Vitalik Buterin | @vbuterin | Co-author of EIP-8141; co-author of EIP-8250 Keyed Nonces (PR #11598, merged May 11) and EIP-8272 Recent Roots (PR #11726, merged Jun 5); primary author with Thomas Coratger of EIP-8288 Frame type for PQ sig and STARK aggregation (PR #11772, opened Jun 5) |
| lightclient (Matt) | @lightclient | Co-author, primary spec maintainer, added per-frame value (PR #11534, merged Apr 16), repaired custom-verifier signature bytes with PR #11837, and restored codeless EOA sponsorship with PR #11954 |
| Felix Lange | @fjl | Co-author, original PR submitter, opcode design |
| Yoav Weiss | @yoavw | Co-author |
| Alex Forshtat | @forshtat | Co-author, ERC-7562/4337 expertise |
| Dror Tirosh | @drortirosh | Co-author |
| Shahaf Nacson | @shahafn | Co-author |
| Derek Chiang | @derekchiang | Co-author (added Mar 13), EOA support, batching, precompile VERIFY |
| Daniel Von Fange | @DanielVF | Key external reviewer (Monad), adoption/performance critique |
| 0xrcinus (Orca) | @0xrcinus | Active reviewer, mode simplification proposals |
| Francisco Giordano | @frangio | Active reviewer (OpenZeppelin), naming/semantics |
| nlordell | @nlordell | Early reviewer, APPROVE propagation analysis |
| Peter Garamvolgyi | @thegaram33 | Early reviewer; author of PR #11272 (EIP-3607 carve-out for frame transactions, merged May 5 after sitting open since Feb 6) |
| Danno Ferrin | @shemnon | Reviewer, scope creep concerns |
| jochem-brouwer | @jochem-brouwer | Detailed canonical paymaster review; EIP editor who requested changes on EIP-8288 on Jun 30 |
| Seungmin Jeon | @sm-stack | PoC implementation, atomic batch bit flag idea |
| rmeissner | @rmeissner | Safe team representative, value-in-frames advocate |
| Chiranjeev Mishra (node.cm) | @chiranjeev13 | Forum reviewer (VERIFY frame count observation) and author of the closed spec-consistency PR #11488; author of ERC-8286 Modular Accounts for Frame Transactions (ERC PR #1794, opened Jun 3), the first application-layer standard built on EIP-8141 |
| Ben Adams | @benaadams | Spec tightening (PR #11521, merged Apr 14), author of EIP-8223 (Contract Payer Transaction) and EIP-8224 (Counterfactual Transaction) |
| Jacopo | @jacopo-eth | Proposed FRAMERETURNDATASIZE/FRAMERETURNDATACOPY for multi-step flows |
| Franco Victorio | @fvictorio | Raised question about validation-frame execution ordering vs non-frame txs |
| dionysuzx | @dionysuzx | Hegotá meta-EIP maintainer, submitted PR #11537 moving EIP-8141 to CFI (merged Apr 30) |
| Nero_eth | Nero_eth | ethresear.ch analyst; "Three Gates to Privacy" post framing mempool/FOCIL/VOPS constraints on privacy-pool flows through frame transactions |
| Toni Wahrstätter | @nerolation | Author of PR #11584 (2D nonces, closed), co-author of EIP-8250 Keyed Nonces (PR #11598, merged May 11), author of PR #11662 (EXPIRY_VERIFIER frame, merged May 14), co-author with lightclient of EIP-8266 Expiring Nonces (PR #11692, merged May 22), and co-author with soispoke and vbuterin of EIP-8272 Recent Roots (PR #11726, merged Jun 5). Added to EIP-8141's author header in PR #11662 |
| Thomas Thiery | @soispoke | Lead author of EIP-8250 Keyed Nonces (PR #11598, merged May 11, extended Jun 1 by PR #11749 adding bounded key-set support) and EIP-8272 Recent Roots (PR #11726, merged Jun 5). Caught the same-block replay bug in PR #11692 (EIP-8266) during May 19 inline review, prompting nerolation's fixes |
| Pedro Gomes | @pedrouid | Author of PR #11681 (opened May 16), the successor to closed PR #11643 (Extended Feature Set, May 11 – May 18): proposes bundling guarantors, keyed nonces, and signer binding into EIP-8141 itself via a signer envelope field and an AUTH_MANAGER system contract, dropping the envelope-expiry component now that PR #11662 (EXPIRY_VERIFIER) ships protocol-level expiry as a verifier-frame contract |
| German Abal | @ariutokintumi | Co-founder/architect of EVVM (contract-native AA framework); contributed a production-perspective comparison on the magicians thread (post #148, May 7) on per-environment policy, async execution, batch granularity, and reservation primitives |
| Sam Wilson | @SamWilsn | EIP editor; spec-coherence review (post #149, May 8) on naming, empty-target representation, opcode-budget, and FRAMEDATACOPY revert semantics |
| trebor | @trebor | Privacy-focused paymaster researcher (Kohaku); raised the Example 3 (ERC-20 paymaster) feasibility question in posts #156-157 (May 21). After matt's clarification in post #158 (Jun 3), trebor committed in post #159 (Jun 4) to a PR clarifying Example 3 in the EIP (Frame 1 should be a signature check by the canonical paymaster, not an on-chain ERC-20 balance read) |
| Thomas Coratger | (not on GitHub directly in PR author list) | Co-author with vbuterin of EIP-8288 (PR #11772, opened Jun 5): Frame type for PQ sig and STARK aggregation. Lean Ethereum tooling contributor |
| Milos Stankovic | @morph-dev | Author of PR #11814 (spec cleanup and clarifications, merged Jul 7): default-code index-0 signature rule later refined by #11954, public-mempool expiry-first rule, signer defaulting to tx.sender, validation-prefix flag matching, and ERC-20 sponsor clarification |
| Stavros Vlachakis | @svlachakis | Implementation-focused EIP-8141 reviewer; authored PRs #11935 and #11937-#11942 covering signature bounds/encoding, operand order, approval scope, gas floors, refunds, and receipt networking |
| Daniil Ankushin | @AnkushinDaniil | Implementation-focused contributor; authored the July EIP-8250/EIP-8272 correction wave (#11930-#11931, #11958-#11963) and approval/sponsor follow-ups #11955-#11956 |
| Mislav Javor | @oxshaman | Lead author of ERC-8211 Smart Batching (ERC PR #1638); the proposal names EIP-8141 SENDER frames as a forward-compatibility execution transport, without taking it as a dependency |
| Giulio Rebuffo | @Giulio2002 | Author of EIP-8202 Scheme-Agile Transactions (PR #11438, merged Apr 22) and its Falcon-512 support; raised the "smart wallet tax" critique of EIP-8141 in the Frame-vs-SchemedTransactions thread |
| Dragan Rakita | @rakita | Author of EIP-8175 Composable Transaction (PR #11355, merged Mar 10), the flat-composition alternative to frame-based AA |
| Chris Hunter | @chunter-cb | Author of EIP-8130 AA by Account Configuration (Coinbase/Base), EIP-8141's principal alternative; announced Base's planned September deployment at AllWalletDevs #40 and authored draft ERC-8340 metadata encoding |
| nixorokish | @nixorokish | Hegotá meta-EIP PFI maintainer (PR #11786, Jun 9); host of the Svalbard native-AA breakout session |
| pipavlo82 | pipavlo82 | EIP-8288 reviewer; raised omission accountability (posts #2-3, #6) and engaged vbuterin's hash-based-minimalism rationale on the PQ frame thread |
| albert-garreta | albert_g | EIP-8288 reviewer; asked the SPHINCS-vs-lattice scheme-selection question (post #4) that vbuterin answered |
| b-wagn | @b-wagn | EIP-8288 reviewer; raised the recursive-proof knowledge-soundness concern on Jul 3 and suggested a depth-counter public input |
| Zakaria Saif | @zacksfF | Author of EIP-8215 Hash-Committed Account (PR #11480), a complementary PQ address-derivation proposal that positions itself alongside EIP-8141 |
External Resources
- Live Demo
- EIP-8141 Latest Spec
- Ethereum Magicians Discussion
- PoC Implementation by sm-stack
- PoC Writeup
- BundleBear EIP-7702 Metrics
- Account Abstraction Link Tree (matt)
- Biconomy: Native AA State-of-Art Q1/26
- Openfort: What EIP-8141 Means for Developers
- FOCIL + Native Account Abstraction
- AA-VOPS: A Pragmatic Path Towards Validity-Only Partial Statelessness
- Frame Transactions Through a Statelessness Lens
- Frame vs Tempo — Two clashing philosophies of native AA
- EIP-8141 is Too Unopinionated (jxom)
- The case for Frame Transactions: Flexible Foundation with Powerful Defaults
- The Evolution of Self-Custody
- Ethereum Wallet UX is changing
- Let us be brave and extend EIP-8141 benefits
- 1 contract, 2 fields, 4 features
- Frame Transactions and the Three Gates to Privacy
- Achieving Quantum Safety through Ephemeral Key Pairs and Account Abstraction
- Ethereum L1 Strawmap
- Post-Quantum Ethereum
- Google: Cryptography Migration Timeline
- Your Ethereum Wallet is About to Change Forever
- EIP-8141 Frame Transactions (HackMD)
- Frame Transactions vs. SchemedTransactions
- EIP-8266: Expiring Nonces for Frame Transactions
- EIP-8272: Recent Roots for Frame Transactions
- EIP-8288: Frame type for PQ sig and STARK aggregation
- EIP-8215: Hash-Committed Account (HCA)
- ERC-8286: Modular Accounts for Frame Transactions
- ERC-8211: Smart Batching
- Svalbard AA Breakout Session Notes
- AllWalletDevs #40, July 15, 2026
- All Core Devs - Execution (ACDE) #241, July 16, 2026
Competing Standards
- EIP-8130: AA by Account Configuration — Magicians thread
- EIP-8175: Composable Transaction — Magicians thread
- EIP-8202: Schemed Transaction — Magicians thread
- EIP-8223: Contract Payer Transaction — Magicians thread
- EIP-8224: Counterfactual Transaction — Magicians thread
- EIP-8215: Hash-Committed Account — Magicians thread
- Tempo-like Transaction (gakonst)