I understand the mempool is local to each node. I also understand the contents of the pool can thus change by node, and each miner is free to pick their tx's from their mempool for a block.
My question is, can you create a transaction yourself, include it in a block you mined, and never broadcast the tx as a txpool entry beyond your own node? only as part of the block you mined yourself, as long as it is a valid tx/block otherwise?
Specifically at this point I am interested to understand the validation logic for included transactions. I tried to read some of the code and found two places:
Blockchain::check_tx_inputs
and
tx_memory_pool::add_tx
So if you can bypass the txpool, do the checks in add_tx never happen?