shape

fun shape(v: Any): Boolean

Append v's repair; false when toString() is already the best answer.

On false the buffer is left as it was found — descend rolls a walk back, every other branch appends nothing until it has decided, and only a THROW leaves a partial render, which element undoes. A new branch owes the same.