• the witness of the first input of the coinbase transaction MUST have exactly one stack item (the "extended header"), with the following data:
• bytes 0 to 3: nHeight MUST be equal to the height of this block (signed little endian)
Someone told me a while back that it would be more natural if we move the nHeight from the coinbase script to the coinbase locktime. Have you considered doing this?