next lab / composition experiment
relationships before runtime
same model. explicit nodes. choose disabled, suggest, or apply. authored placement stays in charge.
type dominant
the sentence sets the measure
the divider approaches the sentence but leaves its authored position.
{
"valid": true,
"issues": [],
"seed": "next-type-01",
"nodes": [
{
"id": "statement",
"content": "Text",
"role": "focal-point",
"capabilities": [
"bounded-variation"
],
"constraints": {
"manualPlacement": true
},
"placement": {
"x": "8%",
"y": "24%",
"scale": 1.1,
"rotate": "-2deg"
},
"authoredPlacement": {
"x": "8%",
"y": "24%",
"scale": 1.1,
"rotate": "-2deg"
},
"relationKinds": [
"interrupt",
"echo"
],
"variation": 0.1054
},
{
"id": "interruption",
"content": "Divider",
"role": "interruption",
"capabilities": [
"edge-aware"
],
"relationKinds": [
"interrupt"
],
"variation": 0
},
{
"id": "citation",
"content": "Label",
"role": "counterweight",
"capabilities": [
"bounded-variation"
],
"relationKinds": [
"echo"
],
"variation": 0.0376
}
],
"decisions": [
{
"relationId": "line-interrupts-statement",
"kind": "interrupt",
"status": "rejected",
"reason": "rejected because manual placement is explicit",
"fallback": "keep the authored flow"
},
{
"relationId": "citation-echoes-statement",
"kind": "echo",
"status": "suggested",
"reason": "repeat one fragment in the margin",
"fallback": "keep the authored flow"
}
]
} {
"authority": "bounded",
"gesture": "procession",
"thesis": "meaning arrives by passing through several scales",
"focalNodeId": "statement",
"motif": "receding-echo",
"palette": "ink-and-signal",
"typography": "processional",
"depth": "near-far",
"interaction": "gravitational-hover",
"semanticOrder": [
"statement",
"interruption",
"citation"
],
"nodePlanes": {
"statement": "focal",
"interruption": "midground",
"citation": "midground"
},
"nodePoses": {},
"layerOrder": [
"background",
"focal",
"midground",
"atmosphere",
"foreground"
],
"canAddAtmosphere": false,
"canRemoveRequiredContent": false
}