Place an Elements federation proposal inside its signalling epoch

A governance monitor needs to know whether two observations belong to the same dynamic-federation signalling period. Block heights by themselves are easy to misalign across custom Elements networks.

Read the node's epoch position

Sample epoch_age and epoch_length from the same response. The age starts at zero and runs to length minus one. Store these with the active root so samples taken on different sides of a boundary remain distinguishable.

elements-cli getblockchaininfo | jq '{blocks,epoch_age,epoch_length,current_params_root,total_valid_epochs}'

Calculate the next boundary distance

For epoch length 100 and age 97, three successor blocks lead to age zero in the next epoch. This says when a boundary is reached, not whether a particular proposal collected sufficient signals. Check the resulting active root and actual block history before declaring a policy change.

elementsproject.org getblockchaininfo