Known Limitations
Honest documentation of Rome Protocol's current constraints and their implications.
Execution Limitations
Modexp precompile disabled. The modular exponentiation precompile (0x05) is disabled by default. Contracts relying on RSA verification or other modexp operations will fail. Can be enabled via feature flag.
SELFDESTRUCT removed. The SELFDESTRUCT opcode is not supported, following Ethereum's Dencun deprecation. Contracts using SELFDESTRUCT will revert.
256 storage slots per storage account. Contract storage is partitioned across Solana accounts with 256 slots each. Contracts with large storage footprints will use multiple accounts, which affects CU costs.
CPI depth limit of 4. Deeply nested CPI calls will fail. Design contracts with shallow call trees.
Token Limitations
Transfer hooks only fire on transfer_checked. Plain transfer calls bypass hooks entirely. All Rome bridge operations use transfer_checked, but third-party integrations must be aware of this.
Mint and burn operations are not hooked. Token-2022 Transfer Hooks do not fire on mint/burn. Controlled via mint authority, not hooks.
Token wrapping escape. Users can potentially wrap Token-2022 tokens into standard SPL tokens to bypass transfer hooks. Mitigated by wrapper blacklists and PermanentDelegate extension, but not fully eliminated.
Oracle Limitations
No historical round data. Oracle Gateway adapters only support latestRoundData(). Historical price queries via getRoundData(roundId) revert.
Parser offsets are empirically validated. Pyth and Switchboard account data is parsed using hardcoded byte offsets. If Pyth or Switchboard change their account layout, adapters will return incorrect data until offsets are re-validated.
Infrastructure Limitations
Single operator model. Each Rome deployment is operated by a single entity (the payer pool operator). There is no decentralized operator set.
Iterative mode locking. During iterative execution, accounts are locked for 3-4 seconds. This can cause contention on heavily-used accounts.
OP-Geth divergence risk. State divergence between Rome EVM and OP-Geth remains a persistent engineering challenge. Footprint validation mitigates but does not eliminate this risk.
What's Next
Responsible Disclosure — how to report issues
Last updated
Was this helpful?