@garemoko what's the use case? Presumably you'd like to display some overview of statements so what you really want is not to throw out statements that are too large, but rather you want to just get "just the basics" of each statement? (but more than Ids).

It's hard to imagine that simply discarding "too big" statements will be satisfactory, nor can I envision a feasible way to provide that overview of large statements without placing the burden of creating some sort of "summary" on statement creators -- and somehow enforcing that the summary is a good one.

Consider that the large part of a statement could be in the result: I was just asked how one would store the answer to an essay question in a statement, and I said: "In the result". "Even if it's 8k of text?" "Yes, in the result".

The catch is "result" seems like it would be something that would be kept in any sane statement-trimming scheme, and I do think it's completely appropriate to put essay question responses there. So I think with that sort of overview use case, you just have to accept pulling some extra data and throwing it out.