@aztec-foundation/l1-artifacts 6.0.0-rc.2 → 6.0.0-rc.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/AttesterExitExtLibAbi.d.ts +12 -48
- package/dest/AttesterExitExtLibAbi.d.ts.map +1 -1
- package/dest/AttesterExitExtLibAbi.js +16 -64
- package/dest/AttesterExitExtLibAbi.js.map +1 -1
- package/dest/AttesterExitExtLibBytecode.d.ts +1 -1
- package/dest/AttesterExitExtLibBytecode.js +1 -1
- package/dest/CoinIssuerAbi.d.ts +12 -48
- package/dest/CoinIssuerAbi.d.ts.map +1 -1
- package/dest/CoinIssuerAbi.js +16 -64
- package/dest/CoinIssuerAbi.js.map +1 -1
- package/dest/DateGatedRelayerAbi.d.ts +12 -48
- package/dest/DateGatedRelayerAbi.d.ts.map +1 -1
- package/dest/DateGatedRelayerAbi.js +16 -64
- package/dest/DateGatedRelayerAbi.js.map +1 -1
- package/dest/EmpireBaseAbi.d.ts +12 -48
- package/dest/EmpireBaseAbi.d.ts.map +1 -1
- package/dest/EmpireBaseAbi.js +16 -64
- package/dest/EmpireBaseAbi.js.map +1 -1
- package/dest/EpochProofExtLibAbi.d.ts +12 -48
- package/dest/EpochProofExtLibAbi.d.ts.map +1 -1
- package/dest/EpochProofExtLibAbi.js +16 -64
- package/dest/EpochProofExtLibAbi.js.map +1 -1
- package/dest/EpochProofExtLibBytecode.d.ts +1 -1
- package/dest/EpochProofExtLibBytecode.d.ts.map +1 -1
- package/dest/EpochProofExtLibBytecode.js +1 -1
- package/dest/EpochProofExtLibBytecode.js.map +1 -1
- package/dest/ErrorsAbi.d.ts +12 -48
- package/dest/ErrorsAbi.d.ts.map +1 -1
- package/dest/ErrorsAbi.js +16 -64
- package/dest/ErrorsAbi.js.map +1 -1
- package/dest/EscapeHatchAbi.d.ts +12 -48
- package/dest/EscapeHatchAbi.d.ts.map +1 -1
- package/dest/EscapeHatchAbi.js +16 -64
- package/dest/EscapeHatchAbi.js.map +1 -1
- package/dest/EscapeHatchBytecode.d.ts +1 -1
- package/dest/EscapeHatchBytecode.js +1 -1
- package/dest/EscapeHatchStorage.d.ts +2 -2
- package/dest/EscapeHatchStorage.js +2 -2
- package/dest/FeeAssetHandlerAbi.d.ts +12 -48
- package/dest/FeeAssetHandlerAbi.d.ts.map +1 -1
- package/dest/FeeAssetHandlerAbi.js +16 -64
- package/dest/FeeAssetHandlerAbi.js.map +1 -1
- package/dest/FeeJuicePortalAbi.d.ts +12 -48
- package/dest/FeeJuicePortalAbi.d.ts.map +1 -1
- package/dest/FeeJuicePortalAbi.js +16 -64
- package/dest/FeeJuicePortalAbi.js.map +1 -1
- package/dest/FeeJuicePortalBytecode.d.ts +1 -1
- package/dest/FeeJuicePortalBytecode.js +1 -1
- package/dest/GSEAbi.d.ts +12 -48
- package/dest/GSEAbi.d.ts.map +1 -1
- package/dest/GSEAbi.js +16 -64
- package/dest/GSEAbi.js.map +1 -1
- package/dest/GovernanceAbi.d.ts +12 -48
- package/dest/GovernanceAbi.d.ts.map +1 -1
- package/dest/GovernanceAbi.js +16 -64
- package/dest/GovernanceAbi.js.map +1 -1
- package/dest/GovernanceProposerAbi.d.ts +12 -48
- package/dest/GovernanceProposerAbi.d.ts.map +1 -1
- package/dest/GovernanceProposerAbi.js +16 -64
- package/dest/GovernanceProposerAbi.js.map +1 -1
- package/dest/HonkVerifierAbi.d.ts +12 -48
- package/dest/HonkVerifierAbi.d.ts.map +1 -1
- package/dest/HonkVerifierAbi.js +16 -64
- package/dest/HonkVerifierAbi.js.map +1 -1
- package/dest/IERC20Abi.d.ts +12 -48
- package/dest/IERC20Abi.d.ts.map +1 -1
- package/dest/IERC20Abi.js +16 -64
- package/dest/IERC20Abi.js.map +1 -1
- package/dest/ISequencerRewardCalculatorAbi.d.ts +2607 -0
- package/dest/ISequencerRewardCalculatorAbi.d.ts.map +1 -0
- package/dest/ISequencerRewardCalculatorAbi.js +3473 -0
- package/dest/ISequencerRewardCalculatorAbi.js.map +1 -0
- package/dest/ISequencerRewardCalculatorBytecode.d.ts +9 -0
- package/dest/ISequencerRewardCalculatorBytecode.d.ts.map +1 -0
- package/dest/ISequencerRewardCalculatorBytecode.js +9 -0
- package/dest/ISequencerRewardCalculatorBytecode.js.map +1 -0
- package/dest/IVerifierAbi.d.ts +12 -48
- package/dest/IVerifierAbi.d.ts.map +1 -1
- package/dest/IVerifierAbi.js +16 -64
- package/dest/IVerifierAbi.js.map +1 -1
- package/dest/InboxAbi.d.ts +12 -48
- package/dest/InboxAbi.d.ts.map +1 -1
- package/dest/InboxAbi.js +16 -64
- package/dest/InboxAbi.js.map +1 -1
- package/dest/InboxBytecode.d.ts +1 -1
- package/dest/InboxBytecode.js +1 -1
- package/dest/MockVerifierAbi.d.ts +12 -48
- package/dest/MockVerifierAbi.d.ts.map +1 -1
- package/dest/MockVerifierAbi.js +16 -64
- package/dest/MockVerifierAbi.js.map +1 -1
- package/dest/MockZKPassportVerifierAbi.d.ts +12 -48
- package/dest/MockZKPassportVerifierAbi.d.ts.map +1 -1
- package/dest/MockZKPassportVerifierAbi.js +16 -64
- package/dest/MockZKPassportVerifierAbi.js.map +1 -1
- package/dest/MultiAdderAbi.d.ts +12 -48
- package/dest/MultiAdderAbi.d.ts.map +1 -1
- package/dest/MultiAdderAbi.js +16 -64
- package/dest/MultiAdderAbi.js.map +1 -1
- package/dest/MultiAdderBytecode.d.ts +1 -1
- package/dest/MultiAdderBytecode.js +1 -1
- package/dest/NewGovernanceProposerPayloadAbi.d.ts +12 -48
- package/dest/NewGovernanceProposerPayloadAbi.d.ts.map +1 -1
- package/dest/NewGovernanceProposerPayloadAbi.js +16 -64
- package/dest/NewGovernanceProposerPayloadAbi.js.map +1 -1
- package/dest/OutboxAbi.d.ts +12 -48
- package/dest/OutboxAbi.d.ts.map +1 -1
- package/dest/OutboxAbi.js +16 -64
- package/dest/OutboxAbi.js.map +1 -1
- package/dest/OutboxBytecode.d.ts +1 -1
- package/dest/OutboxBytecode.js +1 -1
- package/dest/RegisterNewRollupVersionPayloadAbi.d.ts +12 -48
- package/dest/RegisterNewRollupVersionPayloadAbi.d.ts.map +1 -1
- package/dest/RegisterNewRollupVersionPayloadAbi.js +16 -64
- package/dest/RegisterNewRollupVersionPayloadAbi.js.map +1 -1
- package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
- package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
- package/dest/RegistryAbi.d.ts +12 -48
- package/dest/RegistryAbi.d.ts.map +1 -1
- package/dest/RegistryAbi.js +16 -64
- package/dest/RegistryAbi.js.map +1 -1
- package/dest/RewardDistributorAbi.d.ts +12 -48
- package/dest/RewardDistributorAbi.d.ts.map +1 -1
- package/dest/RewardDistributorAbi.js +16 -64
- package/dest/RewardDistributorAbi.js.map +1 -1
- package/dest/RewardExtLibAbi.d.ts +59 -48
- package/dest/RewardExtLibAbi.d.ts.map +1 -1
- package/dest/RewardExtLibAbi.js +77 -64
- package/dest/RewardExtLibAbi.js.map +1 -1
- package/dest/RewardExtLibBytecode.d.ts +1 -1
- package/dest/RewardExtLibBytecode.d.ts.map +1 -1
- package/dest/RewardExtLibBytecode.js +1 -1
- package/dest/RewardExtLibBytecode.js.map +1 -1
- package/dest/RollupAbi.d.ts +72 -79
- package/dest/RollupAbi.d.ts.map +1 -1
- package/dest/RollupAbi.js +93 -104
- package/dest/RollupAbi.js.map +1 -1
- package/dest/RollupBytecode.d.ts +91 -82
- package/dest/RollupBytecode.d.ts.map +1 -1
- package/dest/RollupBytecode.js +94 -82
- package/dest/RollupBytecode.js.map +1 -1
- package/dest/RollupOperationsExtLibAbi.d.ts +12 -48
- package/dest/RollupOperationsExtLibAbi.d.ts.map +1 -1
- package/dest/RollupOperationsExtLibAbi.js +16 -64
- package/dest/RollupOperationsExtLibAbi.js.map +1 -1
- package/dest/RollupOperationsExtLibBytecode.d.ts +1 -1
- package/dest/RollupOperationsExtLibBytecode.d.ts.map +1 -1
- package/dest/RollupOperationsExtLibBytecode.js +1 -1
- package/dest/RollupOperationsExtLibBytecode.js.map +1 -1
- package/dest/RollupStorage.d.ts +2 -2
- package/dest/RollupStorage.js +2 -2
- package/dest/SlasherAbi.d.ts +12 -48
- package/dest/SlasherAbi.d.ts.map +1 -1
- package/dest/SlasherAbi.js +16 -64
- package/dest/SlasherAbi.js.map +1 -1
- package/dest/SlasherDeploymentExtLibAbi.d.ts +12 -48
- package/dest/SlasherDeploymentExtLibAbi.d.ts.map +1 -1
- package/dest/SlasherDeploymentExtLibAbi.js +16 -64
- package/dest/SlasherDeploymentExtLibAbi.js.map +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.d.ts +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.d.ts.map +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.js +1 -1
- package/dest/SlasherDeploymentExtLibBytecode.js.map +1 -1
- package/dest/SlashingProposerAbi.d.ts +12 -48
- package/dest/SlashingProposerAbi.d.ts.map +1 -1
- package/dest/SlashingProposerAbi.js +16 -64
- package/dest/SlashingProposerAbi.js.map +1 -1
- package/dest/SlashingProposerBytecode.d.ts +1 -1
- package/dest/SlashingProposerBytecode.js +1 -1
- package/dest/StakingAssetHandlerAbi.d.ts +12 -48
- package/dest/StakingAssetHandlerAbi.d.ts.map +1 -1
- package/dest/StakingAssetHandlerAbi.js +16 -64
- package/dest/StakingAssetHandlerAbi.js.map +1 -1
- package/dest/TestERC20Abi.d.ts +12 -48
- package/dest/TestERC20Abi.d.ts.map +1 -1
- package/dest/TestERC20Abi.js +16 -64
- package/dest/TestERC20Abi.js.map +1 -1
- package/dest/TokenPortalAbi.d.ts +12 -48
- package/dest/TokenPortalAbi.d.ts.map +1 -1
- package/dest/TokenPortalAbi.js +16 -64
- package/dest/TokenPortalAbi.js.map +1 -1
- package/dest/TokenPortalBytecode.d.ts +1 -1
- package/dest/TokenPortalBytecode.js +1 -1
- package/dest/UniswapPortalAbi.d.ts +12 -48
- package/dest/UniswapPortalAbi.d.ts.map +1 -1
- package/dest/UniswapPortalAbi.js +16 -64
- package/dest/UniswapPortalAbi.js.map +1 -1
- package/dest/UniswapPortalBytecode.d.ts +1 -1
- package/dest/UniswapPortalBytecode.js +1 -1
- package/dest/ValidatorOperationsExtLibAbi.d.ts +12 -48
- package/dest/ValidatorOperationsExtLibAbi.d.ts.map +1 -1
- package/dest/ValidatorOperationsExtLibAbi.js +16 -64
- package/dest/ValidatorOperationsExtLibAbi.js.map +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.d.ts +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.d.ts.map +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.js +1 -1
- package/dest/ValidatorOperationsExtLibBytecode.js.map +1 -1
- package/dest/ValidatorSelectionLibAbi.d.ts +12 -48
- package/dest/ValidatorSelectionLibAbi.d.ts.map +1 -1
- package/dest/ValidatorSelectionLibAbi.js +16 -64
- package/dest/ValidatorSelectionLibAbi.js.map +1 -1
- package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
- package/dest/ValidatorSelectionLibBytecode.js +1 -1
- package/dest/checksum.d.ts +1 -1
- package/dest/checksum.js +1 -1
- package/dest/index.d.ts +2 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +2 -0
- package/dest/index.js.map +1 -1
- package/l1-contracts/cache/solidity-files-cache.json +1 -1
- package/l1-contracts/foundry.toml +1 -1
- package/l1-contracts/out/AddressSnapshotLib.sol/AddressSnapshotLib.json +1 -1
- package/l1-contracts/out/AttestationLib.sol/AttestationLib.json +1 -1
- package/l1-contracts/out/AttesterExitExtLib.sol/AttesterExitExtLib.json +1 -1
- package/l1-contracts/out/BN254Lib.sol/BN254Lib.json +1 -1
- package/l1-contracts/out/Ballot.sol/BallotLib.json +1 -1
- package/l1-contracts/out/BlobLib.sol/BlobLib.json +1 -1
- package/l1-contracts/out/Bn254LibWrapper.sol/Bn254LibWrapper.json +1 -1
- package/l1-contracts/out/CheckpointLog.sol/CompressedTempCheckpointLogLib.json +1 -1
- package/l1-contracts/out/CheckpointedUintLib.sol/CheckpointedUintLib.json +1 -1
- package/l1-contracts/out/CoinIssuer.sol/CoinIssuer.json +1 -1
- package/l1-contracts/out/CompressedTimeMath.sol/CompressedTimeMath.json +1 -1
- package/l1-contracts/out/Configuration.sol/CompressedConfigurationLib.json +1 -1
- package/l1-contracts/out/ConfigurationLib.sol/ConfigurationLib.json +1 -1
- package/l1-contracts/out/ConstantsGen.sol/Constants.json +1 -1
- package/l1-contracts/out/CoordinationSignatureLib.sol/CoordinationSignatureLib.json +1 -1
- package/l1-contracts/out/DataStructures.sol/DataStructures.json +1 -1
- package/l1-contracts/out/DateGatedRelayer.sol/DateGatedRelayer.json +1 -1
- package/l1-contracts/out/DeployAztecL1Contracts.s.sol/DeployAztecL1Contracts.json +1 -1
- package/l1-contracts/out/DeployRollupForUpgrade.s.sol/DeployRollupForUpgrade.json +1 -1
- package/l1-contracts/out/DeployRollupLib.sol/DeployRollupLib.json +1 -1
- package/l1-contracts/out/DeploymentConfiguration.sol/DeploymentConfiguration.json +1 -1
- package/l1-contracts/out/DeploymentConfiguration.sol/IDeploymentConfiguration.json +1 -1
- package/l1-contracts/out/DepositDelegationLib.sol/DepositDelegationLib.json +1 -1
- package/l1-contracts/out/EmpireBase.sol/EmpireBase.json +1 -1
- package/l1-contracts/out/EpochProofExtLib.sol/EpochProofExtLib.json +1 -1
- package/l1-contracts/out/EpochProofLib.sol/EpochProofLib.json +1 -1
- package/l1-contracts/out/Errors.sol/Errors.json +1 -1
- package/l1-contracts/out/EscapeHatch.sol/EscapeHatch.json +1 -1
- package/l1-contracts/out/FeeAssetHandler.sol/FeeAssetHandler.json +1 -1
- package/l1-contracts/out/FeeAssetHandler.sol/IFeeAssetHandler.json +1 -1
- package/l1-contracts/out/FeeConfig.sol/FeeConfigLib.json +1 -1
- package/l1-contracts/out/FeeConfig.sol/PriceLib.json +1 -1
- package/l1-contracts/out/FeeJuicePortal.sol/FeeJuicePortal.json +1 -1
- package/l1-contracts/out/FeeLib.sol/FeeLib.json +1 -1
- package/l1-contracts/out/FeeStructs.sol/FeeHeaderLib.json +1 -1
- package/l1-contracts/out/FeeStructs.sol/FeeStructsLib.json +1 -1
- package/l1-contracts/out/FieldLib.sol/FieldLib.json +1 -1
- package/l1-contracts/out/FlushRewarder.sol/FlushRewarder.json +1 -1
- package/l1-contracts/out/GSE.sol/GSE.json +1 -1
- package/l1-contracts/out/GSE.sol/GSECore.json +1 -1
- package/l1-contracts/out/GSE.sol/IGSE.json +1 -1
- package/l1-contracts/out/GSE.sol/IGSECore.json +1 -1
- package/l1-contracts/out/GSEPayload.sol/GSEPayload.json +1 -1
- package/l1-contracts/out/Governance.sol/Governance.json +1 -1
- package/l1-contracts/out/GovernanceProposer.sol/GovernanceProposer.json +1 -1
- package/l1-contracts/out/Hash.sol/Hash.json +1 -1
- package/l1-contracts/out/HonkVerifier.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/IBn254LibWrapper.sol/IBn254LibWrapper.json +1 -1
- package/l1-contracts/out/ICoinIssuer.sol/ICoinIssuer.json +1 -1
- package/l1-contracts/out/IDateGatedRelayer.sol/IDateGatedRelayer.json +1 -1
- package/l1-contracts/out/IEmpire.sol/IEmperor.json +1 -1
- package/l1-contracts/out/IEmpire.sol/IEmpire.json +1 -1
- package/l1-contracts/out/IFeeJuicePortal.sol/IFeeJuicePortal.json +1 -1
- package/l1-contracts/out/IFlushRewarder.sol/IFlushRewarder.json +1 -1
- package/l1-contracts/out/IGovernance.sol/IGovernance.json +1 -1
- package/l1-contracts/out/IGovernanceProposer.sol/IGovernanceProposer.json +1 -1
- package/l1-contracts/out/IInbox.sol/IInbox.json +1 -1
- package/l1-contracts/out/IInstance.sol/IInstance.json +1 -1
- package/l1-contracts/out/IMintableERC20.sol/IMintableERC20.json +1 -1
- package/l1-contracts/out/IOutbox.sol/IOutbox.json +1 -1
- package/l1-contracts/out/IPayload.sol/IPayload.json +1 -1
- package/l1-contracts/out/IProposerPayload.sol/IProposerPayload.json +1 -1
- package/l1-contracts/out/IRegistry.sol/IHaveVersion.json +1 -1
- package/l1-contracts/out/IRegistry.sol/IRegistry.json +1 -1
- package/l1-contracts/out/IRewardDistributor.sol/IRewardDistributor.json +1 -1
- package/l1-contracts/out/IRollup.sol/IRollup.json +1 -1
- package/l1-contracts/out/IRollup.sol/IRollupCore.json +1 -1
- package/l1-contracts/out/IRootRegistry.sol/IRootRegistry.json +1 -1
- package/l1-contracts/out/ISequencerRewardCalculator.sol/ISequencerRewardCalculator.json +1 -0
- package/l1-contracts/out/ISlasher.sol/ISlasher.json +1 -1
- package/l1-contracts/out/IStaking.sol/IStaking.json +1 -1
- package/l1-contracts/out/IStaking.sol/IStakingCore.json +1 -1
- package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelection.json +1 -1
- package/l1-contracts/out/IValidatorSelection.sol/IValidatorSelectionCore.json +1 -1
- package/l1-contracts/out/IVerifier.sol/IVerifier.json +1 -1
- package/l1-contracts/out/Inbox.sol/Inbox.json +1 -1
- package/l1-contracts/out/InputsExtractor.sol/InputsExtractor.json +1 -1
- package/l1-contracts/out/InvalidateLib.sol/InvalidateLib.json +1 -1
- package/l1-contracts/out/MerkleLib.sol/MerkleLib.json +1 -1
- package/l1-contracts/out/MockERC20.sol/MockERC20.json +1 -1
- package/l1-contracts/out/MockERC721.sol/MockERC721.json +1 -1
- package/l1-contracts/out/MockFeeJuicePortal.sol/MockFeeJuicePortal.json +1 -1
- package/l1-contracts/out/MockVerifier.sol/MockVerifier.json +1 -1
- package/l1-contracts/out/MockZKPassportVerifier.sol/IZKPassportVerifier.json +1 -1
- package/l1-contracts/out/MockZKPassportVerifier.sol/MockZKPassportVerifier.json +1 -1
- package/l1-contracts/out/MultiAdder.sol/IMultiAdder.json +1 -1
- package/l1-contracts/out/MultiAdder.sol/MultiAdder.json +1 -1
- package/l1-contracts/out/Outbox.sol/Outbox.json +1 -1
- package/l1-contracts/out/OuterCount8.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/Proposal.sol/CompressedProposalLib.json +1 -1
- package/l1-contracts/out/ProposalLib.sol/ProposalLib.json +1 -1
- package/l1-contracts/out/ProposeLib.sol/ProposeLib.json +1 -1
- package/l1-contracts/out/ProposedHeaderLib.sol/ProposedHeaderLib.json +1 -1
- package/l1-contracts/out/RegisterNewRollupVersionPayload.sol/RegisterNewRollupVersionPayload.json +1 -1
- package/l1-contracts/out/Registry.sol/Registry.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/IBooster.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/IBoosterCore.json +1 -1
- package/l1-contracts/out/RewardBooster.sol/RewardBooster.json +1 -1
- package/l1-contracts/out/RewardDistributor.sol/RewardDistributor.json +1 -1
- package/l1-contracts/out/RewardExtLib.sol/RewardExtLib.json +1 -1
- package/l1-contracts/out/RewardLib.sol/BpsLib.json +1 -1
- package/l1-contracts/out/RewardLib.sol/RewardLib.json +1 -1
- package/l1-contracts/out/Rollup.sol/Rollup.json +1 -1
- package/l1-contracts/out/RollupConfiguration.sol/IRollupConfiguration.json +1 -1
- package/l1-contracts/out/RollupConfiguration.sol/RollupConfiguration.json +1 -1
- package/l1-contracts/out/RollupCore.sol/RollupCore.json +1 -1
- package/l1-contracts/out/RollupOperationsExtLib.sol/RollupOperationsExtLib.json +1 -1
- package/l1-contracts/out/STFLib.sol/STFLib.json +1 -1
- package/l1-contracts/out/SampleLib.sol/SampleLib.json +1 -1
- package/l1-contracts/out/SequencerRewardCalculatorLib.sol/SequencerRewardCalculatorLib.json +1 -0
- package/l1-contracts/out/SignatureLib.sol/SignatureLib.json +1 -1
- package/l1-contracts/out/SlashPayload.sol/SlashPayload.json +1 -1
- package/l1-contracts/out/SlashPayloadCloneable.sol/SlashPayloadCloneable.json +1 -1
- package/l1-contracts/out/SlashPayloadLib.sol/SlashPayloadLib.json +1 -1
- package/l1-contracts/out/SlashRoundLib.sol/CompressedSlashRoundMath.json +1 -1
- package/l1-contracts/out/Slasher.sol/Slasher.json +1 -1
- package/l1-contracts/out/SlasherDeploymentExtLib.sol/SlasherDeploymentExtLib.json +1 -1
- package/l1-contracts/out/SlashingProposer.sol/SlashingProposer.json +1 -1
- package/l1-contracts/out/StakingAssetHandler.sol/IStakingAssetHandler.json +1 -1
- package/l1-contracts/out/StakingAssetHandler.sol/StakingAssetHandler.json +1 -1
- package/l1-contracts/out/StakingLib.sol/StakingLib.json +1 -1
- package/l1-contracts/out/StakingQueue.sol/StakingQueueLib.json +1 -1
- package/l1-contracts/out/StakingQueueConfig.sol/StakingQueueConfigLib.json +1 -1
- package/l1-contracts/out/StdError.sol/stdError.json +1 -1
- package/l1-contracts/out/TestERC20.sol/TestERC20.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/CallAssetPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/CallRevertingPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/EmptyPayload.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/FakeRollup.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/RevertingCall.json +1 -1
- package/l1-contracts/out/TestPayloads.sol/UpgradePayload.json +1 -1
- package/l1-contracts/out/TimeLib.sol/TimeLib.json +1 -1
- package/l1-contracts/out/Tips.sol/ChainTipsLib.json +1 -1
- package/l1-contracts/out/ValidatorOperationsExtLib.sol/ValidatorOperationsExtLib.json +1 -1
- package/l1-contracts/out/ValidatorSelectionLib.sol/ValidatorSelectionLib.json +1 -1
- package/l1-contracts/out/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
- package/l1-contracts/out/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
- package/l1-contracts/out/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
- package/l1-contracts/out/build-info/4cb7b5442b848dcc.json +1 -0
- package/l1-contracts/out/generated/HonkVerifier.sol/HonkVerifier.json +1 -1
- package/l1-contracts/out/libraries/Errors.sol/Errors.json +1 -1
- package/l1-contracts/out/rollup/BlobLib.sol/BlobLib.json +1 -1
- package/l1-contracts/out/src/ZKPassportHelper.sol/ZKPassportHelper.json +1 -1
- package/l1-contracts/out/src/ZKPassportRootVerifier.sol/ZKPassportRootVerifier.json +1 -1
- package/l1-contracts/out/src/ZKPassportSubVerifier.sol/ZKPassportSubVerifier.json +1 -1
- package/l1-contracts/script/deploy/RollupConfiguration.sol +5 -19
- package/l1-contracts/scripts/network-defaults.json +1 -2
- package/l1-contracts/src/core/Rollup.sol +18 -12
- package/l1-contracts/src/core/RollupCore.sol +14 -27
- package/l1-contracts/src/core/interfaces/IRollup.sol +7 -11
- package/l1-contracts/src/core/interfaces/ISequencerRewardCalculator.sol +39 -0
- package/l1-contracts/src/core/interfaces/IValidatorSelection.sol +0 -2
- package/l1-contracts/src/core/libraries/Errors.sol +3 -6
- package/l1-contracts/src/core/libraries/rollup/BlobLib.sol +16 -6
- package/l1-contracts/src/core/libraries/rollup/EpochProofExtLib.sol +2 -7
- package/l1-contracts/src/core/libraries/rollup/EpochProofLib.sol +4 -12
- package/l1-contracts/src/core/libraries/rollup/RewardExtLib.sol +30 -12
- package/l1-contracts/src/core/libraries/rollup/RewardLib.sol +187 -250
- package/l1-contracts/src/core/libraries/rollup/SequencerRewardCalculatorLib.sol +110 -0
- package/l1-contracts/src/core/libraries/rollup/ValidatorSelectionLib.sol +2 -4
- package/package.json +1 -1
- package/l1-contracts/out/RewardLib.sol/IATP.json +0 -1
- package/l1-contracts/out/RewardLib.sol/IATPStaker.json +0 -1
- package/l1-contracts/out/build-info/f88e638ee47a1ead.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"abi":[{"type":"function","name":"getBucket","inputs":[{"name":"_seq","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IInbox.InboxBucket","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMsgCount","type":"uint64","internalType":"uint64"},{"name":"timestamp","type":"uint64","internalType":"uint64"},{"name":"msgCount","type":"uint32","internalType":"uint32"}]}],"stateMutability":"view"},{"type":"function","name":"getBucketAtOrBeforeTotal","inputs":[{"name":"_upperBound","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"},{"name":"","type":"tuple","internalType":"struct IInbox.InboxBucket","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMsgCount","type":"uint64","internalType":"uint64"},{"name":"timestamp","type":"uint64","internalType":"uint64"},{"name":"msgCount","type":"uint32","internalType":"uint32"}]}],"stateMutability":"view"},{"type":"function","name":"getCurrentBucketSeq","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"getFeeAssetPortal","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProvenConsumedBucketSeq","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"getRingHeadroom","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getState","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct IInbox.InboxState","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMessagesInserted","type":"uint64","internalType":"uint64"},{"name":"currentBucketSeq","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"getTotalMessagesInserted","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"markProvenConsumed","inputs":[{"name":"_bucketSeq","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"sendL2Message","inputs":[{"name":"_recipient","type":"tuple","internalType":"struct DataStructures.L2Actor","components":[{"name":"actor","type":"bytes32","internalType":"bytes32"},{"name":"version","type":"uint256","internalType":"uint256"}]},{"name":"_content","type":"bytes32","internalType":"bytes32"},{"name":"_secretHash","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"event","name":"MessageSent","inputs":[{"name":"hash","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"bucketSeq","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"message","type":"tuple","indexed":false,"internalType":"struct DataStructures.L1ToL2Msg","components":[{"name":"sender","type":"tuple","internalType":"struct DataStructures.L1Actor","components":[{"name":"actor","type":"address","internalType":"address"},{"name":"chainId","type":"uint256","internalType":"uint256"}]},{"name":"recipient","type":"tuple","internalType":"struct DataStructures.L2Actor","components":[{"name":"actor","type":"bytes32","internalType":"bytes32"},{"name":"version","type":"uint256","internalType":"uint256"}]},{"name":"content","type":"bytes32","internalType":"bytes32"},{"name":"secretHash","type":"bytes32","internalType":"bytes32"},{"name":"index","type":"uint256","internalType":"uint256"}]}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getBucket(uint256)":"65fe45ed","getBucketAtOrBeforeTotal(uint64)":"af16b039","getCurrentBucketSeq()":"8afaa215","getFeeAssetPortal()":"8ccf6b95","getProvenConsumedBucketSeq()":"620f2724","getRingHeadroom()":"9953c8ec","getState()":"1865c57d","getTotalMessagesInserted()":"9500ac30","markProvenConsumed(uint64)":"e80f8951","sendL2Message((bytes32,uint256),bytes32,bytes32)":"1f6d510b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"bucketSeq\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"actor\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L1Actor\",\"name\":\"sender\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"actor\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L2Actor\",\"name\":\"recipient\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"content\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"secretHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct DataStructures.L1ToL2Msg\",\"name\":\"message\",\"type\":\"tuple\"}],\"name\":\"MessageSent\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_seq\",\"type\":\"uint256\"}],\"name\":\"getBucket\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMsgCount\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"msgCount\",\"type\":\"uint32\"}],\"internalType\":\"struct IInbox.InboxBucket\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_upperBound\",\"type\":\"uint64\"}],\"name\":\"getBucketAtOrBeforeTotal\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMsgCount\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"msgCount\",\"type\":\"uint32\"}],\"internalType\":\"struct IInbox.InboxBucket\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBucketSeq\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeeAssetPortal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProvenConsumedBucketSeq\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRingHeadroom\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getState\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMessagesInserted\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"currentBucketSeq\",\"type\":\"uint64\"}],\"internalType\":\"struct IInbox.InboxState\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTotalMessagesInserted\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_bucketSeq\",\"type\":\"uint64\"}],\"name\":\"markProvenConsumed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"actor\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L2Actor\",\"name\":\"_recipient\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"_content\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_secretHash\",\"type\":\"bytes32\"}],\"name\":\"sendL2Message\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Aztec Labs\",\"events\":{\"MessageSent(bytes32,bytes32,uint256,((address,uint256),(bytes32,uint256),bytes32,bytes32,uint256))\":{\"details\":\"Carries the full message so the event is a self-contained record \\u2014 reconstructing the fields from calldata is unreliable for portals sending via internal calls. Hashing `message` yields the indexed `hash`, and `message.index` is the compact cumulative index of the message in the Inbox insertion order.\",\"params\":{\"bucketSeq\":\"- The sequence number of the bucket this message was absorbed into\",\"hash\":\"- The hash of the message (the L1-to-L2 tree leaf)\",\"inboxRollingHash\":\"- The consensus rolling hash (truncated sha256 chain) after this message\",\"message\":\"- The full message\"}}},\"kind\":\"dev\",\"methods\":{\"getBucket(uint256)\":{\"details\":\"Reverts if the bucket is ahead of the current one or has already been overwritten in the ring\",\"params\":{\"_seq\":\"- The bucket sequence number\"},\"returns\":{\"_0\":\"The bucket\"}},\"getBucketAtOrBeforeTotal(uint64)\":{\"details\":\"Cumulative totals strictly increase with the bucket sequence (every opened bucket absorbs at least one message), so the result is the newest retained bucket whose end position does not exceed the bound. Probes the newest four live entries first, then binary-searches the remaining live interval. Only ring entries that have not been overwritten are candidates; the genesis bucket qualifies only while its ring entry is still live. Reverts with `Inbox__NoBucketAtOrBeforeTotal` when even the oldest retained bucket ends past the bound.\",\"params\":{\"_upperBound\":\"- The cumulative message total the returned bucket may not exceed\"},\"returns\":{\"_0\":\"The sequence number of the matching bucket and the bucket itself\"}},\"getCurrentBucketSeq()\":{\"returns\":{\"_0\":\"The current bucket sequence number\"}},\"getProvenConsumedBucketSeq()\":{\"returns\":{\"_0\":\"The proven-consumed bucket sequence number\"}},\"getRingHeadroom()\":{\"details\":\"Counts bucket openings, not messages: at zero, messages can still be absorbed into the current bucket until it fills or its L1 block passes. Equals the ring size at genesis and recovers as proofs advance the proven-consumed record.\",\"returns\":{\"_0\":\"The number of buckets that can still be opened\"}},\"markProvenConsumed(uint64)\":{\"details\":\"Only callable by the rollup. Monotonic: a value at or below the current record is a no-op. Reverts with `Inbox__Unauthorized` if the caller is not the rollup, and with `Inbox__BucketOutOfWindow` if `_bucketSeq` is ahead of the current bucket.\",\"params\":{\"_bucketSeq\":\"- The sequence number of the newest bucket the proven chain has consumed\"}},\"sendL2Message((bytes32,uint256),bytes32,bytes32)\":{\"details\":\"Emits `MessageSent` with data for easy access by the sequencer\",\"params\":{\"_content\":\"- The content of the message (application specific)\",\"_recipient\":\"- The recipient of the message\",\"_secretHash\":\"- The secret hash of the message (make it possible to hide when a specific message is consumed on L2)\"},\"returns\":{\"_0\":\"The key of the message in the set and its compact cumulative index\"}}},\"title\":\"Inbox\",\"version\":1},\"userdoc\":{\"events\":{\"MessageSent(bytes32,bytes32,uint256,((address,uint256),(bytes32,uint256),bytes32,bytes32,uint256))\":{\"notice\":\"Emitted when a message is sent\"}},\"kind\":\"user\",\"methods\":{\"getBucket(uint256)\":{\"notice\":\"Returns the bucket with the given sequence number\"},\"getBucketAtOrBeforeTotal(uint64)\":{\"notice\":\"Returns the live bucket with the greatest cumulative message total at or below `_upperBound`\"},\"getCurrentBucketSeq()\":{\"notice\":\"Returns the sequence number of the bucket currently accumulating messages\"},\"getProvenConsumedBucketSeq()\":{\"notice\":\"Returns the sequence number of the newest bucket consumed by the proven chain\"},\"getRingHeadroom()\":{\"notice\":\"Returns the number of buckets that can still be opened before `sendL2Message` reverts to protect an unconsumed bucket from being overwritten\"},\"markProvenConsumed(uint64)\":{\"notice\":\"Records that the proven chain has consumed all messages up to and including bucket `_bucketSeq`, unlocking eviction of buckets at or below it when the ring wraps\"},\"sendL2Message((bytes32,uint256),bytes32,bytes32)\":{\"notice\":\"Inserts a new message into the Inbox\"}},\"notice\":\"Lives on L1 and is used to pass messages into the rollup from L1.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/interfaces/messagebridge/IInbox.sol\":\"IInbox\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":100},\"remappings\":[\":@aztec-blob-lib/=src/mock/libraries/\",\":@aztec/=src/\",\":@generated/=generated/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@oz/=lib/openzeppelin-contracts/contracts/\",\":@test/=test/\",\":@zkpassport-test/=lib/circuits/src/solidity/test/\",\":@zkpassport/=lib/circuits/src/solidity/src/\",\":circuits/=lib/circuits/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"]},\"sources\":{\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e\",\"dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32","name":"hash","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32","indexed":false},{"internalType":"uint256","name":"bucketSeq","type":"uint256","indexed":false},{"internalType":"struct DataStructures.L1ToL2Msg","name":"message","type":"tuple","components":[{"internalType":"struct DataStructures.L1Actor","name":"sender","type":"tuple","components":[{"internalType":"address","name":"actor","type":"address"},{"internalType":"uint256","name":"chainId","type":"uint256"}]},{"internalType":"struct DataStructures.L2Actor","name":"recipient","type":"tuple","components":[{"internalType":"bytes32","name":"actor","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"}]},{"internalType":"bytes32","name":"content","type":"bytes32"},{"internalType":"bytes32","name":"secretHash","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"indexed":false}],"type":"event","name":"MessageSent","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_seq","type":"uint256"}],"stateMutability":"view","type":"function","name":"getBucket","outputs":[{"internalType":"struct IInbox.InboxBucket","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMsgCount","type":"uint64"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"uint32","name":"msgCount","type":"uint32"}]}]},{"inputs":[{"internalType":"uint64","name":"_upperBound","type":"uint64"}],"stateMutability":"view","type":"function","name":"getBucketAtOrBeforeTotal","outputs":[{"internalType":"uint64","name":"","type":"uint64"},{"internalType":"struct IInbox.InboxBucket","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMsgCount","type":"uint64"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"uint32","name":"msgCount","type":"uint32"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getCurrentBucketSeq","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getFeeAssetPortal","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getProvenConsumedBucketSeq","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRingHeadroom","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getState","outputs":[{"internalType":"struct IInbox.InboxState","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMessagesInserted","type":"uint64"},{"internalType":"uint64","name":"currentBucketSeq","type":"uint64"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTotalMessagesInserted","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint64","name":"_bucketSeq","type":"uint64"}],"stateMutability":"nonpayable","type":"function","name":"markProvenConsumed"},{"inputs":[{"internalType":"struct DataStructures.L2Actor","name":"_recipient","type":"tuple","components":[{"internalType":"bytes32","name":"actor","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"}]},{"internalType":"bytes32","name":"_content","type":"bytes32"},{"internalType":"bytes32","name":"_secretHash","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"sendL2Message","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"getBucket(uint256)":{"details":"Reverts if the bucket is ahead of the current one or has already been overwritten in the ring","params":{"_seq":"- The bucket sequence number"},"returns":{"_0":"The bucket"}},"getBucketAtOrBeforeTotal(uint64)":{"details":"Cumulative totals strictly increase with the bucket sequence (every opened bucket absorbs at least one message), so the result is the newest retained bucket whose end position does not exceed the bound. Probes the newest four live entries first, then binary-searches the remaining live interval. Only ring entries that have not been overwritten are candidates; the genesis bucket qualifies only while its ring entry is still live. Reverts with `Inbox__NoBucketAtOrBeforeTotal` when even the oldest retained bucket ends past the bound.","params":{"_upperBound":"- The cumulative message total the returned bucket may not exceed"},"returns":{"_0":"The sequence number of the matching bucket and the bucket itself"}},"getCurrentBucketSeq()":{"returns":{"_0":"The current bucket sequence number"}},"getProvenConsumedBucketSeq()":{"returns":{"_0":"The proven-consumed bucket sequence number"}},"getRingHeadroom()":{"details":"Counts bucket openings, not messages: at zero, messages can still be absorbed into the current bucket until it fills or its L1 block passes. Equals the ring size at genesis and recovers as proofs advance the proven-consumed record.","returns":{"_0":"The number of buckets that can still be opened"}},"markProvenConsumed(uint64)":{"details":"Only callable by the rollup. Monotonic: a value at or below the current record is a no-op. Reverts with `Inbox__Unauthorized` if the caller is not the rollup, and with `Inbox__BucketOutOfWindow` if `_bucketSeq` is ahead of the current bucket.","params":{"_bucketSeq":"- The sequence number of the newest bucket the proven chain has consumed"}},"sendL2Message((bytes32,uint256),bytes32,bytes32)":{"details":"Emits `MessageSent` with data for easy access by the sequencer","params":{"_content":"- The content of the message (application specific)","_recipient":"- The recipient of the message","_secretHash":"- The secret hash of the message (make it possible to hide when a specific message is consumed on L2)"},"returns":{"_0":"The key of the message in the set and its compact cumulative index"}}},"version":1},"userdoc":{"kind":"user","methods":{"getBucket(uint256)":{"notice":"Returns the bucket with the given sequence number"},"getBucketAtOrBeforeTotal(uint64)":{"notice":"Returns the live bucket with the greatest cumulative message total at or below `_upperBound`"},"getCurrentBucketSeq()":{"notice":"Returns the sequence number of the bucket currently accumulating messages"},"getProvenConsumedBucketSeq()":{"notice":"Returns the sequence number of the newest bucket consumed by the proven chain"},"getRingHeadroom()":{"notice":"Returns the number of buckets that can still be opened before `sendL2Message` reverts to protect an unconsumed bucket from being overwritten"},"markProvenConsumed(uint64)":{"notice":"Records that the proven chain has consumed all messages up to and including bucket `_bucketSeq`, unlocking eviction of buckets at or below it when the ring wraps"},"sendL2Message((bytes32,uint256),bytes32,bytes32)":{"notice":"Inserts a new message into the Inbox"}},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/interfaces/messagebridge/IInbox.sol":"IInbox"},"evmVersion":"prague","libraries":{}},"sources":{"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa","urls":["bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e","dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"}},"version":1},"id":83}
|
|
1
|
+
{"abi":[{"type":"function","name":"getBucket","inputs":[{"name":"_seq","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IInbox.InboxBucket","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMsgCount","type":"uint64","internalType":"uint64"},{"name":"timestamp","type":"uint64","internalType":"uint64"},{"name":"msgCount","type":"uint32","internalType":"uint32"}]}],"stateMutability":"view"},{"type":"function","name":"getBucketAtOrBeforeTotal","inputs":[{"name":"_upperBound","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"},{"name":"","type":"tuple","internalType":"struct IInbox.InboxBucket","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMsgCount","type":"uint64","internalType":"uint64"},{"name":"timestamp","type":"uint64","internalType":"uint64"},{"name":"msgCount","type":"uint32","internalType":"uint32"}]}],"stateMutability":"view"},{"type":"function","name":"getCurrentBucketSeq","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"getFeeAssetPortal","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProvenConsumedBucketSeq","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"getRingHeadroom","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getState","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct IInbox.InboxState","components":[{"name":"rollingHash","type":"bytes32","internalType":"bytes32"},{"name":"totalMessagesInserted","type":"uint64","internalType":"uint64"},{"name":"currentBucketSeq","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"getTotalMessagesInserted","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"markProvenConsumed","inputs":[{"name":"_bucketSeq","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"sendL2Message","inputs":[{"name":"_recipient","type":"tuple","internalType":"struct DataStructures.L2Actor","components":[{"name":"actor","type":"bytes32","internalType":"bytes32"},{"name":"version","type":"uint256","internalType":"uint256"}]},{"name":"_content","type":"bytes32","internalType":"bytes32"},{"name":"_secretHash","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"event","name":"MessageSent","inputs":[{"name":"hash","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"inboxRollingHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"bucketSeq","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"message","type":"tuple","indexed":false,"internalType":"struct DataStructures.L1ToL2Msg","components":[{"name":"sender","type":"tuple","internalType":"struct DataStructures.L1Actor","components":[{"name":"actor","type":"address","internalType":"address"},{"name":"chainId","type":"uint256","internalType":"uint256"}]},{"name":"recipient","type":"tuple","internalType":"struct DataStructures.L2Actor","components":[{"name":"actor","type":"bytes32","internalType":"bytes32"},{"name":"version","type":"uint256","internalType":"uint256"}]},{"name":"content","type":"bytes32","internalType":"bytes32"},{"name":"secretHash","type":"bytes32","internalType":"bytes32"},{"name":"index","type":"uint256","internalType":"uint256"}]}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getBucket(uint256)":"65fe45ed","getBucketAtOrBeforeTotal(uint64)":"af16b039","getCurrentBucketSeq()":"8afaa215","getFeeAssetPortal()":"8ccf6b95","getProvenConsumedBucketSeq()":"620f2724","getRingHeadroom()":"9953c8ec","getState()":"1865c57d","getTotalMessagesInserted()":"9500ac30","markProvenConsumed(uint64)":"e80f8951","sendL2Message((bytes32,uint256),bytes32,bytes32)":"1f6d510b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"inboxRollingHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"bucketSeq\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"actor\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L1Actor\",\"name\":\"sender\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"actor\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L2Actor\",\"name\":\"recipient\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"content\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"secretHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct DataStructures.L1ToL2Msg\",\"name\":\"message\",\"type\":\"tuple\"}],\"name\":\"MessageSent\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_seq\",\"type\":\"uint256\"}],\"name\":\"getBucket\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMsgCount\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"msgCount\",\"type\":\"uint32\"}],\"internalType\":\"struct IInbox.InboxBucket\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_upperBound\",\"type\":\"uint64\"}],\"name\":\"getBucketAtOrBeforeTotal\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMsgCount\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"msgCount\",\"type\":\"uint32\"}],\"internalType\":\"struct IInbox.InboxBucket\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCurrentBucketSeq\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeeAssetPortal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProvenConsumedBucketSeq\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRingHeadroom\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getState\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"rollingHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"totalMessagesInserted\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"currentBucketSeq\",\"type\":\"uint64\"}],\"internalType\":\"struct IInbox.InboxState\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTotalMessagesInserted\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_bucketSeq\",\"type\":\"uint64\"}],\"name\":\"markProvenConsumed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"actor\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"version\",\"type\":\"uint256\"}],\"internalType\":\"struct DataStructures.L2Actor\",\"name\":\"_recipient\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"_content\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_secretHash\",\"type\":\"bytes32\"}],\"name\":\"sendL2Message\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Aztec Labs\",\"events\":{\"MessageSent(bytes32,bytes32,uint256,((address,uint256),(bytes32,uint256),bytes32,bytes32,uint256))\":{\"details\":\"Carries the full message so the event is a self-contained record \\u2014 reconstructing the fields from calldata is unreliable for portals sending via internal calls. Hashing `message` yields the indexed `hash`, and `message.index` is the compact cumulative index of the message in the Inbox insertion order.\",\"params\":{\"bucketSeq\":\"- The sequence number of the bucket this message was absorbed into\",\"hash\":\"- The hash of the message (the L1-to-L2 tree leaf)\",\"inboxRollingHash\":\"- The consensus rolling hash (truncated sha256 chain) after this message\",\"message\":\"- The full message\"}}},\"kind\":\"dev\",\"methods\":{\"getBucket(uint256)\":{\"details\":\"Reverts if the bucket is ahead of the current one or has already been overwritten in the ring\",\"params\":{\"_seq\":\"- The bucket sequence number\"},\"returns\":{\"_0\":\"The bucket\"}},\"getBucketAtOrBeforeTotal(uint64)\":{\"details\":\"Cumulative totals strictly increase with the bucket sequence (every opened bucket absorbs at least one message), so the result is the newest retained bucket whose end position does not exceed the bound. Probes the newest four live entries first, then binary-searches the remaining live interval. Only ring entries that have not been overwritten are candidates; the genesis bucket qualifies only while its ring entry is still live. Reverts with `Inbox__NoBucketAtOrBeforeTotal` when even the oldest retained bucket ends past the bound.\",\"params\":{\"_upperBound\":\"- The cumulative message total the returned bucket may not exceed\"},\"returns\":{\"_0\":\"The sequence number of the matching bucket and the bucket itself\"}},\"getCurrentBucketSeq()\":{\"returns\":{\"_0\":\"The current bucket sequence number\"}},\"getProvenConsumedBucketSeq()\":{\"returns\":{\"_0\":\"The proven-consumed bucket sequence number\"}},\"getRingHeadroom()\":{\"details\":\"Counts bucket openings, not messages: at zero, messages can still be absorbed into the current bucket until it fills or its L1 block passes. Equals the ring size at genesis and recovers as proofs advance the proven-consumed record.\",\"returns\":{\"_0\":\"The number of buckets that can still be opened\"}},\"markProvenConsumed(uint64)\":{\"details\":\"Only callable by the rollup. Monotonic: a value at or below the current record is a no-op. Reverts with `Inbox__Unauthorized` if the caller is not the rollup, and with `Inbox__BucketOutOfWindow` if `_bucketSeq` is ahead of the current bucket.\",\"params\":{\"_bucketSeq\":\"- The sequence number of the newest bucket the proven chain has consumed\"}},\"sendL2Message((bytes32,uint256),bytes32,bytes32)\":{\"details\":\"Emits `MessageSent` with data for easy access by the sequencer\",\"params\":{\"_content\":\"- The content of the message (application specific)\",\"_recipient\":\"- The recipient of the message\",\"_secretHash\":\"- The secret hash of the message (make it possible to hide when a specific message is consumed on L2)\"},\"returns\":{\"_0\":\"The key of the message in the set and its compact cumulative index\"}}},\"title\":\"Inbox\",\"version\":1},\"userdoc\":{\"events\":{\"MessageSent(bytes32,bytes32,uint256,((address,uint256),(bytes32,uint256),bytes32,bytes32,uint256))\":{\"notice\":\"Emitted when a message is sent\"}},\"kind\":\"user\",\"methods\":{\"getBucket(uint256)\":{\"notice\":\"Returns the bucket with the given sequence number\"},\"getBucketAtOrBeforeTotal(uint64)\":{\"notice\":\"Returns the live bucket with the greatest cumulative message total at or below `_upperBound`\"},\"getCurrentBucketSeq()\":{\"notice\":\"Returns the sequence number of the bucket currently accumulating messages\"},\"getProvenConsumedBucketSeq()\":{\"notice\":\"Returns the sequence number of the newest bucket consumed by the proven chain\"},\"getRingHeadroom()\":{\"notice\":\"Returns the number of buckets that can still be opened before `sendL2Message` reverts to protect an unconsumed bucket from being overwritten\"},\"markProvenConsumed(uint64)\":{\"notice\":\"Records that the proven chain has consumed all messages up to and including bucket `_bucketSeq`, unlocking eviction of buckets at or below it when the ring wraps\"},\"sendL2Message((bytes32,uint256),bytes32,bytes32)\":{\"notice\":\"Inserts a new message into the Inbox\"}},\"notice\":\"Lives on L1 and is used to pass messages into the rollup from L1.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/core/interfaces/messagebridge/IInbox.sol\":\"IInbox\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":100},\"remappings\":[\":@aztec-blob-lib/=src/mock/libraries/\",\":@aztec/=src/\",\":@generated/=generated/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@oz/=lib/openzeppelin-contracts/contracts/\",\":@test/=test/\",\":@zkpassport-test/=lib/circuits/src/solidity/test/\",\":@zkpassport/=lib/circuits/src/solidity/src/\",\":circuits/=lib/circuits/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"]},\"sources\":{\"src/core/interfaces/messagebridge/IInbox.sol\":{\"keccak256\":\"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f\",\"dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm\"]},\"src/core/libraries/ConstantsGen.sol\":{\"keccak256\":\"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e\",\"dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT\"]},\"src/core/libraries/DataStructures.sol\":{\"keccak256\":\"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4\",\"dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32","name":"hash","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"inboxRollingHash","type":"bytes32","indexed":false},{"internalType":"uint256","name":"bucketSeq","type":"uint256","indexed":false},{"internalType":"struct DataStructures.L1ToL2Msg","name":"message","type":"tuple","components":[{"internalType":"struct DataStructures.L1Actor","name":"sender","type":"tuple","components":[{"internalType":"address","name":"actor","type":"address"},{"internalType":"uint256","name":"chainId","type":"uint256"}]},{"internalType":"struct DataStructures.L2Actor","name":"recipient","type":"tuple","components":[{"internalType":"bytes32","name":"actor","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"}]},{"internalType":"bytes32","name":"content","type":"bytes32"},{"internalType":"bytes32","name":"secretHash","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"indexed":false}],"type":"event","name":"MessageSent","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_seq","type":"uint256"}],"stateMutability":"view","type":"function","name":"getBucket","outputs":[{"internalType":"struct IInbox.InboxBucket","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMsgCount","type":"uint64"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"uint32","name":"msgCount","type":"uint32"}]}]},{"inputs":[{"internalType":"uint64","name":"_upperBound","type":"uint64"}],"stateMutability":"view","type":"function","name":"getBucketAtOrBeforeTotal","outputs":[{"internalType":"uint64","name":"","type":"uint64"},{"internalType":"struct IInbox.InboxBucket","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMsgCount","type":"uint64"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"uint32","name":"msgCount","type":"uint32"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getCurrentBucketSeq","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getFeeAssetPortal","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getProvenConsumedBucketSeq","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRingHeadroom","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getState","outputs":[{"internalType":"struct IInbox.InboxState","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"rollingHash","type":"bytes32"},{"internalType":"uint64","name":"totalMessagesInserted","type":"uint64"},{"internalType":"uint64","name":"currentBucketSeq","type":"uint64"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTotalMessagesInserted","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint64","name":"_bucketSeq","type":"uint64"}],"stateMutability":"nonpayable","type":"function","name":"markProvenConsumed"},{"inputs":[{"internalType":"struct DataStructures.L2Actor","name":"_recipient","type":"tuple","components":[{"internalType":"bytes32","name":"actor","type":"bytes32"},{"internalType":"uint256","name":"version","type":"uint256"}]},{"internalType":"bytes32","name":"_content","type":"bytes32"},{"internalType":"bytes32","name":"_secretHash","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"sendL2Message","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"getBucket(uint256)":{"details":"Reverts if the bucket is ahead of the current one or has already been overwritten in the ring","params":{"_seq":"- The bucket sequence number"},"returns":{"_0":"The bucket"}},"getBucketAtOrBeforeTotal(uint64)":{"details":"Cumulative totals strictly increase with the bucket sequence (every opened bucket absorbs at least one message), so the result is the newest retained bucket whose end position does not exceed the bound. Probes the newest four live entries first, then binary-searches the remaining live interval. Only ring entries that have not been overwritten are candidates; the genesis bucket qualifies only while its ring entry is still live. Reverts with `Inbox__NoBucketAtOrBeforeTotal` when even the oldest retained bucket ends past the bound.","params":{"_upperBound":"- The cumulative message total the returned bucket may not exceed"},"returns":{"_0":"The sequence number of the matching bucket and the bucket itself"}},"getCurrentBucketSeq()":{"returns":{"_0":"The current bucket sequence number"}},"getProvenConsumedBucketSeq()":{"returns":{"_0":"The proven-consumed bucket sequence number"}},"getRingHeadroom()":{"details":"Counts bucket openings, not messages: at zero, messages can still be absorbed into the current bucket until it fills or its L1 block passes. Equals the ring size at genesis and recovers as proofs advance the proven-consumed record.","returns":{"_0":"The number of buckets that can still be opened"}},"markProvenConsumed(uint64)":{"details":"Only callable by the rollup. Monotonic: a value at or below the current record is a no-op. Reverts with `Inbox__Unauthorized` if the caller is not the rollup, and with `Inbox__BucketOutOfWindow` if `_bucketSeq` is ahead of the current bucket.","params":{"_bucketSeq":"- The sequence number of the newest bucket the proven chain has consumed"}},"sendL2Message((bytes32,uint256),bytes32,bytes32)":{"details":"Emits `MessageSent` with data for easy access by the sequencer","params":{"_content":"- The content of the message (application specific)","_recipient":"- The recipient of the message","_secretHash":"- The secret hash of the message (make it possible to hide when a specific message is consumed on L2)"},"returns":{"_0":"The key of the message in the set and its compact cumulative index"}}},"version":1},"userdoc":{"kind":"user","methods":{"getBucket(uint256)":{"notice":"Returns the bucket with the given sequence number"},"getBucketAtOrBeforeTotal(uint64)":{"notice":"Returns the live bucket with the greatest cumulative message total at or below `_upperBound`"},"getCurrentBucketSeq()":{"notice":"Returns the sequence number of the bucket currently accumulating messages"},"getProvenConsumedBucketSeq()":{"notice":"Returns the sequence number of the newest bucket consumed by the proven chain"},"getRingHeadroom()":{"notice":"Returns the number of buckets that can still be opened before `sendL2Message` reverts to protect an unconsumed bucket from being overwritten"},"markProvenConsumed(uint64)":{"notice":"Records that the proven chain has consumed all messages up to and including bucket `_bucketSeq`, unlocking eviction of buckets at or below it when the ring wraps"},"sendL2Message((bytes32,uint256),bytes32,bytes32)":{"notice":"Inserts a new message into the Inbox"}},"version":1}},"settings":{"remappings":["@aztec-blob-lib/=src/mock/libraries/","@aztec/=src/","@generated/=generated/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@oz/=lib/openzeppelin-contracts/contracts/","@test/=test/","@zkpassport-test/=lib/circuits/src/solidity/test/","@zkpassport/=lib/circuits/src/solidity/src/","circuits/=lib/circuits/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/"],"optimizer":{"enabled":true,"runs":100},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/core/interfaces/messagebridge/IInbox.sol":"IInbox"},"evmVersion":"prague","libraries":{}},"sources":{"src/core/interfaces/messagebridge/IInbox.sol":{"keccak256":"0x1149c904c8b3bd2942628fbab5480cdc044e831d51963f9e6946f1974cc162bd","urls":["bzz-raw://af2f1f49feba389b0bdbf427c4a85fac2908699585e5babd75f77cf14416ed5f","dweb:/ipfs/QmZYjZyhicCpTcwPuWTjTTUxnaBnfv5bTMWDgxyDGqy8Gm"],"license":"Apache-2.0"},"src/core/libraries/ConstantsGen.sol":{"keccak256":"0xe328f94338f5563669e04618c3ec21ec38b9f21ab24d5de698d80cf38f977dfa","urls":["bzz-raw://3d9872c9a78d7241053e9ce3eadf192d18a9cb4b95c0ac120470d92435b7216e","dweb:/ipfs/QmcRnfbW8sNWwRHPik4wvkA7CTY1BTjuf2ydu3jN5otQJT"],"license":"Apache-2.0"},"src/core/libraries/DataStructures.sol":{"keccak256":"0x5ea9d1097f0b53eafbd72332d4c5c517307e5a056266befe5b46f5f43ee3d83c","urls":["bzz-raw://1a742311dc3c5ead2d5361549f017d20f46c40a4e74e879823ac168cf5b572d4","dweb:/ipfs/QmTNDc1fiPti41QqJTJQoV9uduB6eXaQhbfq1hfVVjVNvS"],"license":"Apache-2.0"}},"version":1},"id":84}
|