arthur/docs
Your Name 10b96761fa Plan: a lane is a view, not a thing in the document
The lane model put a second container in the node map — a group with
`:layout :sequence`, with its own membership, its own validation and its own
fourteen commands — and every part of the editor then had to ask which kind of
container it was looking at. The decision recorded here is to delete all of
it: a lane becomes a way of DRAWING a symbol whose children are sequential and
non-overlapping, the display goes back to a row per symbol, and the word
survives only in the timeline and in the drag handling that re-spans a
symbol's children while it is drawn that way.

The commands are not the part being thrown away. `extend-hold`, `resize-out`,
`roll`, `blank` and the rest are what endpoint dragging IS, and their
arithmetic is right; what changes is their subject, from "the children of lane
L in symbol S" to "the children of symbol S". They belong in `span.cljs`,
which already owns re-spanning and `finish`.

The plan takes a position on the one question that decides whether this is a
simplification or a circle: lane mode is a saved hint on the symbol rather
than unsaved view state, because the drag rules follow the mode, and a toggle
the document does not record would make one gesture do two different things
to it. Nothing outside the timeline may read the hint.

It also lists what must not be lost on the way, all of which broke at least
once today: a held clip's contents reachable with no keys and no draggable
edges, double-click to open surviving the selection it leaves behind,
selection waiting for pointer-up, no drop silently deleting what it lands on,
and a sound drawn once.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-10-01 16:16:30 -04:00
..
animation-model.md The face owns its placement, not the take that holds it 2026-10-01 01:25:37 -04:00
architecture.md grand unification of time 2026-10-01 01:47:08 -04:00
correction-authoring-plan.md Unify cel editing in the timeline 2026-10-01 14:37:59 -04:00
design.md Brows: traced ring, quantised raise 2026-09-24 18:11:25 -04:00
frame-selection.md The snap is per group, and the slot interval has to reach it 2026-10-01 10:21:35 -04:00
lane-handoff.md The timeline opens the whole document 2026-10-01 16:13:02 -04:00
lane-is-a-view-plan.md Plan: a lane is a view, not a thing in the document 2026-10-01 16:16:30 -04:00
lane-model.md A lane is a generic row of symbol clips 2026-10-01 15:13:07 -04:00
lane-nesting-notes.md The timeline opens the whole document 2026-10-01 16:13:02 -04:00
multi-face-representation.md An occurrence is a node, with a clock of its own 2026-09-30 15:20:23 -04:00
port-plan.md The face owns its placement, not the take that holds it 2026-10-01 01:25:37 -04:00
time.md The snap reads back into the slot's own gap, per pose group 2026-10-01 11:34:43 -04:00
timing-handoff.md Symbols, not timelines; no symbol is special 2026-09-29 12:46:42 -04:00
timing-model.md grand unification of time 2026-10-01 01:47:08 -04:00