I think Grin is about the most spam proof chain there is. Where spam is shorthand for inscribed arbitrary data. This is because
-
Grin is scriptless. So there’s no scripts in which to embed data.
-
Grin has no addresses. So you can’t embed data in a pretend address. (you can in other hybrid MW chains like Litecoin).
-
Kernels only allow a few bytes of arbitrary data in past lock heights. If you spread such data over many kernels of one tx, then finding them among a block’s sorted kernels is a challenge.
-
Outputs only allow some arbitrary data in the rangeproofs, much of which is only retrievable by the owner. Since I don’t understand BPs in detail, someone else will need to say how many bytes could be made publicly visible. It will in any case be a small percentage of the BP size of 674 bytes. And it suffers the same challenge of finding a tx’s outputs among a block’s sorted ones. Finally, it will disappear from most full nodes once the output is spent.