roadmap/implementers-guide/src/node/availability/bitfield-signing.md
Validators vote on the availability of a backed candidate by issuing signed bitfields, where each bit corresponds to a single candidate. These bitfields can be used to compactly determine which backed candidates are available or not based on a 2/3+ quorum.
Input:
There is no dedicated input mechanism for bitfield signing. Instead, Bitfield Signing produces a bitfield representing the current state of availability on StartWork.
Output:
BitfieldDistribution::DistributeBitfield: distribute a locally signed bitfieldAvailabilityStore::QueryChunk(CandidateHash, validator_index, response_channel)Upon receipt of an ActiveLeavesUpdate, launch bitfield signing job for each activated head referring to a fresh leaf. Stop the job for each deactivated head.
Localized to a specific relay-parent r
If not running as a validator, do nothing.
i, the set of backed candidates pending availability in r, and which bit of the bitfield each corresponds to.OccupiedCore struct contains the candidate hash so the full candidate does not need to be fetched from runtime.BitfieldDistribution::DistributeBitfield message.