Is Coinbase transaction required to be signed?
The coinbase transaction is constructed by the miner/mining pool operator and is not a transaction which can be broadcast to the mempool.

The amount of the coinbase output is strictly according to the block height, which begins with 50 BTC and halves every 150 blocks in regtest mode. When you create a new block in regtest mode, it will automatically generate a coinbase transaction, with the output spending to your specified coinbase wallet.

The input script of the coinbase has the [blockheight (4B)] and additional data, totally a maximum of 100B.

Input:


Previous TX hash: 00..00
Previous output index: max_value(ff..ff)
Input script: [blockheight (4B)] [additional arbitrary data]


The input is not signed because it does not spend from a UTXO. There are no locking conditions other than to be committed to a header with valid POW.