Skip to content

Bradbury rejects Governor deployment above a sub-16M gas ceiling #419

Description

@Snehal707

Summary

A current ~46KB Intelligent Contract (the Governor) cannot be deployed to Bradbury through either the standard SDK automatic-gas path or the manual transaction path tested. Bradbury rejects the transaction before acceptance with gas limit too high.

This appears to be a distinct hard ceiling finding, separate from the gas-underestimation behavior reported in #402.

Reproduction

Environment:

  • Network: Bradbury, chain ID 4221
  • Source: contracts/governor.py
  • Source size: 46,535 bytes
  • SHA-256: 87c21436acbd4079a30ee3b7bf9ad5c12ef8c69b180750983dd2aba8ebfa6c02
  • Governor source includes enrollment, review, claim, halt, and mandate-promotion logic
  • Upgrade/deploy payload: approximately 41KB

Manual path:

  • A gas limit based on an estimated requirement of approximately 32,489,986 was rejected with gas limit too high.
  • An explicit gas limit of 16,777,216 was rejected with gas limit too high.
  • An explicit gas limit of 16,000,000 was rejected with gas limit too high.

Standard SDK path:

The current source was then submitted once through the normal genlayer-js deployment path using automatic gas handling, with no manual gas override. It used a separately funded raw-key wallet:

  • Wallet nonce before submission: latest=0, pending=0
  • RPC returned identifier: 0xe4d645bf55acb1c661b1704428436a2330c1d56c6b06ce800185f610328b2703c
  • RPC error: gas limit too high
  • eth_getTransactionByHash: null
  • Receipt lookup: null
  • Wallet nonce afterward: latest=0, pending=0

No contract was created and no Intelligent Contract state changed.

Conclusion

Across the tested manual and automatic transaction-construction paths, this Governor-sized deployment is rejected at a gas limit below 16,000,000. The fresh wallet and clean nonce rule out the earlier stuck-nonce wallet as the cause, and the automatic path rules out a manually guessed gas limit as the sole cause.

This may affect other sizably-sized Intelligent Contract deployments or upgrades on Bradbury, not only this Governor. We are not claiming every contract has the same gas requirement; the exact Bradbury ceiling remains to be determined.

Question

What is Bradbury's actual per-transaction gas ceiling, and what is the supported route for deploying or upgrading Intelligent Contracts that require more gas? Is there a chunked deployment, protocol-specific upgrade route, different transaction type, or documented contract-size/gas guidance?

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions