Personally I think keeping water and lava in your plot is best solution. If that is too technical then make blocks that look like water/lava and let us get that and we can play and shape it one block at a time. Simple, quick, and lets a feature become an actual game implementation instead of months of discussions, design and mechanics work, etc.
As for griefing… I seem to notice a trend of a lot of talk about trying to protect from this. People spend too much time trying to stop jerks. We shouldn’t make it easy for them and create some limitations but we shouldn’t spend many hours trying to stop or create a model to stop it. They don’t play by rules so rules or design decisions won’t solve it.
The reality is jerks are always going to be jerks and will always find a way to be a jerk. They will always find a way to out think a design to be a jerk. Just make a simple reporting system and way to remove the jerk from the equation and repair their jerky action. That will do more to limit the pain from jerks.
Over time as the jerk actions are catalogued we can put solutions in place to add constraints to their jerkiness. But for now, I personally just think its better to deliver solutions that provide fun and good experiences without so many of their own limitations due to “possible jerk actions”.
Maybe the jerks never come, so why are so many conversations started with “griefing” or people doing bad. Can’t we as a community assume “good” and just have a reporting and simple dealing method for the “bad”.
(edit: don’t get me wrong in that I am strongly against jerks but for me believe there needs to be less focus on that and more on simple ways to counter the actions)