Ah, I think I found some of your technical issues... My impression is that I don't think transaction size should be any issue for Riecoin since we will most likely never approach scaling issues like upstream. I wasn't aware of any issue with zero-fee transactions and segwit, if a miner wishes to mine them I don't see a reason why that is not allowed (that would be a pool or miner setting, correct?).
Segwit's benefits for Riecoin are beyond scaling though, Script versioning and MAST, Schnorr, others come to mind.
The issue of zero-fee transactions is independent of segwit. I don't think they are possible, but they can be set to .00000001.
Here is what I wrote a couple months ago.
I looked into transaction fees a a bit. I think there is enough flexibility through configuration options that we don't need to add a zero transaction fee capability. The parameters are:
mintxfee - the minimum transaction fee in RIC/kB
minrelaytxfee - the minimum transaction fee for a node to relay the transaction in RIC/kB
blockmintxfee - minimum fee for a transaction to be included in blocks created by mining code, in RIC/kB
The defaults are all 0.00001000 RIC/kB. The smallest value is .00000001.
-mintxfee=.00000001 -minrelaytxfee=.00000001 -blockmintxfee=.00000001 will allow transactions of 1 satoshi (or gatra). I have tested this on testnet.
This way we allow users, nodes, and miners to determine what rates should be instead of fixing it in code and we stay consistent with bitcoin.
I could see possibly lowering the defaults.
Two other values that might be useful:
fallbackfee - the standard fee, defaults to 0.00020000 RIC/kB
m_discard_rate - any change smaller than this is considered dust and is added to the transaction fee, default is .00010000