Cottony's tray, star, ball and props are four modules of imperative geometry code, and the shape each one describes is not readable without running it. Stating a shape should not mean writing and debugging a program.
A format covering only primitives would leave every real asset back in code. The vocabulary comes from the existing models: extruded outlines, crowned plates, radial arrays, annuli and boolean pockets — not from a list of shapes that seemed reasonable.
Geometry constants live inside a module while the rig's live in a dataclass, so a search can reach the lighting and never the shape it is lighting. A declaration puts both in the same place, which is the whole reason this block is worth doing at all.
Any format will meet a shape it cannot state, and forcing that shape into the format produces worse geometry than the script it replaced. So the way back to code is a node, not a mode: a custom node names a function in the project, and the rest of the declaration stays data around it.
Handles for anything slow, a post-condition on every operation, typed errors that name the remedy, a surface that describes itself and this machine, and configuration resolved per call.
A surface is read on a sphere in three seconds, a render returns its measurements in the same answer, a distribution is reported as a set rather than a mean, and a sheet shows an asset beside its siblings.
What counts as a correct render, written as a file a search can aim at; a search that finds the rig numbers instead of a person finding them by hand; a cache so nothing renders twice; and a trace of everything the search rejected.
A silhouette gate before the credit moves, a ceiling agreed once instead of a question per fetch, the mesh kept because the service deletes it at seventy-two hours, and a fetched asset normalised into this project's axes.
A Godot run judged by what the script printed rather than by an exit code that means nothing, a capture that works where there is no screen, a scale derived instead of tuned, and a runner pinned so two machines agree.
A fetched mesh rigged so it can be posed at all, motion as a clip rather than a second static render, curves as text a diff can show, and one source for both a 2D sprite and a 3D scene.