:source-highlighter: highlight.js :highlightjs-languages: rust :github-icon: pass:[] = cumulus_pallet_aura_ext Branch/Release: `release-polkadot-v1.10.0` == Purpose This pallet integrates parachain’s own block production mechanism (for example AuRa) into Cumulus parachain system. It allows: - to manage the unincluded blocks from the current slot - to validate produced block against the relay chain == Configuration and Integration link:https://github.com/paritytech/polkadot-sdk/tree/release-polkadot-v1.10.0/cumulus/pallets/aura-ext[{github-icon},role=heading-link] There is no special config for this integration and it has no dispatchables, but you need to integrate it with other `parachain-system` crate: === Integrate `BlockExecutor` When you invoke the `register_validate_block` macro, you should provide `cumulus_pallet_aura_ext::BlockExecutor` to it to allow `aura-ext` to validate the blocks produced by `aura` [source, rust] ---- cumulus_pallet_parachain_system::register_validate_block! { Runtime = Runtime, BlockExecutor = cumulus_pallet_aura_ext::BlockExecutor::, } ---- === Integrate `ConsensusHook` Also you might want to manage the consensus externally and control the segment that is not yet included (its capacity, speed and etc.) `aura-ext` provides the `FixedVelocityConsensusHook` that allows to check if we are still in the limits for the slot. [source, rust] ---- impl cumulus_pallet_parachain_system::Config for Runtime { ... type ConsensusHook = cumulus_pallet_aura_ext::FixedVelocityConsensusHook< Runtime, RELAY_CHAIN_SLOT_DURATION_MILLIS, BLOCK_PROCESSING_VELOCITY, UNINCLUDED_SEGMENT_CAPACITY, >; } ----