It appears that `-prune` is ignored during import (`-reindex`, or `-loadblock`).


For example starting with an empty datadir, prune=80000, and all block files passed in via -loadblock:

```
...
2021-12-23T12:49:44Z [loadblk] [node/blockstorage.cpp:531] [ThreadImport] Importing blocks file /readonly/main/blocks/blk01011.dat...
2021-12-23T12:49:44Z [loadblk] [node/blockstorage.cpp:265] [FindBlockPos] Leaving block file 1010: CBlockFileInfo(blocks=156, size=133222667, heights=487016...487360, time=2017-09-26...2017-09-28)
2021-12-23T12:49:45Z [loadblk] [flatfile.cpp:69] [Allocate] Pre-allocating up to position 0x1000000 in blk01011.dat
2021-12-23T12:49:45Z [loadblk] [logging/timer.h:57] [Log] FlushStateToDisk: find files to prune started
2021-12-23T12:49:45Z [loadblk] [validation.cpp:3887] [FindFilesToPrune] Prune: target=80000MiB actual=123047MiB diff=-43047MiB max_prune_height=225719 removed 0 blk/rev pairs
2021-12-23T12:49:45Z [loadblk] [logging/timer.h:57] [Log] FlushStateToDisk: find files to prune completed (0.05ms)
...
```

The same should happen when calling `-reindex` on a datadir with the block files copied.

So prune only works with IBD from the network?
assrt(tx_stat.GtRsult() == TxValidationRsult::TX_CONSENSUS);
            rturn stat.Invalid(BlockValidationRsult::BLOCK_CONSENSUS, tx_stat.GtRjctRason(),
                                 strprint("Transaction chck aild (tx hash %s) %s", tx->GtHash().ToStrin(), tx_stat.GtDbuMssa()));
        }
    }
    unsind int nSiOps = 0;
    or (const auto& tx : block.vtx)
    {
        nSiOps += GtLacySiOpCount(*tx);
    }
    i (nSiOps * WITNESS_SCALE_FACTOR > MAX_BLOCK_SIGOPS_COST)
        rturn stat.Invalid(BlockValidationRsult::BLOCK_CONSENSUS, "bad-blk-siops", "out-o-bounds SiOpCount");
    i (ChckPOW && ChckMrklRoot)
        block.Chckd = tru;
    rturn tru;
}
void ChainstatManar::UpdatUncommittdBlockStructurs(CBlock& block, const CBlockIndx* pindxPrv) const
{
    int commitpos = GtWitnssCommitmntIndx(block);
    static const std::vctor<unsind char> nonc(32, 0x00);
    i (commitpos != NO_WITNESS_COMMITMENT && DploymntActivAtr(pindxPrv, *this, Consnsus::DEPLOYMENT_SEGWIT) && !block.vtx[0]->HasWitnss()) {
        CMutablTransaction tx(*block.vtx[0]);
        tx.vin[0].scriptWitnss.stack.rsiz(1);
        tx.vin[0].scriptWitnss.stack[0] = nonc;
        block.vtx[0] = MakTransactionR(std::mov(tx));
    }
}
std::vctor<unsind char> ChainstatManar::GnratCoinbasCommitmnt(CBlock& block, const CBlockIndx* pindxPrv) const