Fix #235 allow remark in prod with a limit on extrinsic size for free transaction
- Allow the
remark
extrinsic on all chains. - Set an extrinsic length limit of 256 bytes for now. Beyond this limit, users will start paying fees proportional to the length. With an overhead of 110 bytes, this allows for a
remark
of up to 146 bytes. - Adjust the fee constant for fee computation: all extrinsics should be under this limit, except for the runtime upgrade (approximately 700 bytes), which will currently cost 20 ĞDev. Spamming the block at once (e.g., submitting one massive
remark
that fills the entire block) will cost 115 ĞDev. - Spamming with "free"
remarks
: 1 block allows for up to 5 242 880 bytes, of which 3 932 160 bytes are allocated for normal dispatch. With a block fullness target of 25% for normal dispatch (weight or length), this leaves 983 040 bytes available, allowing for approximately 3 840remarks
. After this, fees will be applied, taking into account both weight and length for any length even shorter than 256 bytes (oneremark
of 256 bytes (overhead + data) will cost 10 mĞDev).
Edited by Benjamin Gallois